Liferay

E' utilizzato da medie e grandi aziende in tutto il mondo e comprende una lunga lista di funzionalità, che lo rendono equiparabile a molti portali forniti con licenze commerciali.

JSR 168 (Portlet 1 API) e JSR 286 (Portlet 2 API)  Compliant.

E' possibile fare il deploy di qualsiasi portlet che rispetti le specifiche JSR 168. Questo vuol dire che si possono aggiungere funzionalità al portale, scrivendo delle portlet standard o comprandole da portlet vendors.

WSRP Compliant.

WSRP è uno standard che permette di fruire ed erogare portlet remote, ovvero che stanno su un'altro portale. Ciò vi permette di comprare/vendere portlet come servizi piuttosto che componenti.

CMS.

Liferay offre una serie di portlet che fanno da CMS per la costruzione di siti statici accessibili anche senza autenticazione. Questo sistema CMS è basato su un meccanismo a template che permette tramite XML/XSL/XSLT/VM di separare completamente i dati redazionali dalle informazioni di impaginazione. E' previsto un workflow minimale per l'approvazione dei contenuti. Le pagine sono poi fornite da servlet apposite (il sito di Liferay è fatto in questo modo).

 
 
 

SSO.

Liferay comprende un connector per l'engine single sign on CAS, ma è comunque possibile integrarsi con altri motori di SSO, sviluppando degli appositi plugin.
Liferay può sincronizzare la sua lista utenti con DataSource esterni o sistemi LDAP (come Active Directory). E' anche incluso un connector per Microsoft Exchange.

ASP Model.

Liferay è stato disegnato fin dall'inizio per essere utilizzato da Application Service Providers. Questo significa che è possibile far convivere più istanze di portale, accessibili con URL diverse, sullo stesso application server e appoggiandosi allo stesso database.

Application Server Agnostic.

Liferay può essere installato praticamente su qualsiasi servlet container o application server standard J2EE.
Liferay funziona sia su Tomcat, Jetty, etc., che su application server commerciali come Borland ES, Oracle9iAS, Weblogic, etc. Ovviamente essendo scritto in Java gira su diversi sistemi operativi : BSD, Linux, Windows, Mac, etc.

Spring, EJB, and AOP.

Lo strato business di Liferay è scritto utilizzando Spring. Ciò permette di utilizzare le caratteristiche AOP, IOC e Proxy di Spring per personalizzare più agevolmente il codice. Utilizzando Spring si può scegliere se utilizzare gli strati di servizio POJO o gli strati EJB. Quindi un deploy su un AS J2EE ne sfrutta realmente tutte le capacità.

Database Agnostic.

Liferay utilizza Hibernate come tool di persistenza, quindi può girare su qualsiasi database da esso supportato. Attualmente Hibernate supporta una vasta gamma di database quali : DB2, Firebird, Hypersonic, InterBase, JDataStore, MySQL, Oracle, PostgreSQL, SAP, SQL Server.

Scalable N-Tier Cluster.

Liferay utilizza OSCache per offrire un livello di cache clusterizzata. Quindi è possibile scalare i deployment senza sacrificare il livello di caching.

Struts and Tiles.

Lo stato di presentation utilizza Struts come framework MVC. Il suo utilizzo permette agli sviluppatori di trovare un ambiente 'familiare' per lo sviluppo di nuove portlets. Il Look and Feel del portale può essere facilmente modificato grazie al fatto che la presentazione si basa su templates Tiles.

 
 
 

Internazionalizzazione.

Liferay è sviluppato tenendo conto dell'internazionalizzazione e include traduzioni per una dozzina delle lingue più diffuse.

Personalizzazione.

Il portale permette agli utenti di creare le proprie pagine e di disporre le portlet a piacimento all'interno di schemi preimpostati (una, due, tre colonne), con semplici operazioni di drag and drop.

Amministrazione.

Liferay comprende delle portlet di amministrazione per la gestione di utenti, ruoli, gruppi e permessi. I permessi possono essere assegnati, con un livello molto fine di granularità, fino alla singola istanza di portlet, regolamentandone l'accesso.
Anche la visibilità delle singole pagine del portale è regolata tramite autorizzazioni, assegnate agli utenti da un amministratore di sistema.

Portlet già pronte.

Uno dei punti di forza di Liferay è l'elevato numero di portlet native messe a disposizione degli utenti. Fra queste troviamo Blogs, Calendar, Document Library, Web Content (CMS), Image Gallery, Mail, Message Boards, Polls, RSS e Wiki.