Introducción a la gestión de contenidos
en Java con Liferay
Introducción
Los sistemas de gestión de contenidos son aplicaciones que
permiten crear y publicar diferentes contenidos, noticias,
publicaciones, etc. que generalmente cambia con regularidad. Es
importante que sea el propio sistema el que gestione los contenidos, es
decir que ofrezca el soporte para que de forma sencilla pueda
publicarse continuamente la información. En este tutorial
vamos a introducir Liferay que es un gestor de contenidos open source
hecho en Java.
Características
Liferay es un gestor de contenidos muy maduro que da soporte a
múltiples tecnologías relacionadas con Java. Las
más importantes son las siguientes:
- Desarrollo de funcionalidades a través de
portlets. - Hibernate para el acceso a bases de datos (DB2, HSQLDB,
MySQL, Oracle, PostgreSQL…) - Struts, JSF, Facelets, ICEFaces…
- Integración con LDAP.
- Servidores JBoss, Tomcat, OC4J, Geronimo, Glassfish,
Weblogic, Websphere, Jetty… - Lucene como motor de indexación y
búsqueda de contenidos. - Gestión de usuarios y permisos.
- Clustering y caches distribuidas (Ehcache)
- Workflows (Implementación del motor JBoss’ jBPM)
- Single Sign on para que la autenticación y
autorización se realice una única vez para los
distintos sistemas. - Personalización de plantillas, CSS y Javascript.
Instalación
Descargamos Liferay de sourceforge de la web oficial http://www.liferay.com/web/guest/downloads/portal.
Yo he hecho las pruebas con la versión para Tomcat 6.0.
La
instalación es sencilla, simplemente descomprimir el zip ya
que
se distribuye ya integrado en Tomcat con lo cual una vez descomprimido
tendremos un Tomcat con Liferay instalado. Lo único que
hará falta será configurar el datasource. Para
ello
editamos el fichero
<Dir_instalacion>/ROOT/conf/Catalina/localhost/ROOT.xml.
En mi
caso voy a utilizar MySQL por lo tanto descomento el datasource
configurado para esta base de datos. En este fichero también
se
puede configurar el servidor de correo IMAP, POP y SMTP ya que
Liferay tiene servicio de correo integrado.
Una vez configurado el datasource creamos el esquema de base
de datos en MySQL con el nombre lportal.
Por último añadimos el driver de JDBC de
MySQL al directorio <Dir_instalacion>/lib/ext
Para arrancar vamos al directorio
<Dir_instalacion>/bin y ejecutamos el startup.bat para
Windows o .startup.sh para Linux. La primera vez que se
arranca la aplicación tarda bastante ya que tiene que crear
todas las tablas de base de datos.
Entrar en la aplicación
Una vez instalado accedemos a la aplicación a
través de http://localhost:8080
Lo primero será autenticarnos en la
aplicación. Para ello podemos utilizar un usuario por
defecto que es usuario: test@liferay.com, password:
test
También podemos crear usuarios nuevos.
Una
vez registrado el usuario nos asigna una password que
también
enviará por correo electrónico a la cuenta que le
hemos
indicado en el
registro siempre y cuando configuremos el servidor de correo SMTP.
Entramos en la aplicación introduciendo nuestro usuario y
password. Nos aparecerá una página donde
tendremos que
aceptar una serie de términos de uso. Una vez aceptada esta
página aparece la home que por defecto nos muestra el
usuario
autenticado y un mensaje de Hello World.
Cuando
se crea un usuario, por defecto se le asigna el Locale en
inglés. Si queremos cambiar esto además de otras
características del usuario accedemos al
menú
principal de configuración situado arriba a la derecha y
seleccionamos ‘Mi Account’. Desde esta pantalla podemos ver nuestros
datos, cambiar la contraseña, ver nuestros roles, subir una
foto, etc.
Añadir portlets a la página
Liferay
se basa en que toda la funcionalidad está en los portlets.
Por
defecto vienen bastantes portlets listos para usar en el portal que son
configurables. Para añadirlos sobre la página de
Inicio
(la única creada de momento) seleccionamos la
opción
‘Añadir portlet’ del menú.
La
lista de portlets por defecto es larga, además se pueden
descargar más portlets desde un repositorio
al cual se puede conectar Liferay (a través del portlet
Instalador de plugins). Yo voy a escoger algunos portlets para la home
de mi página.
Desde
los controles situados en la parte arriba-derecha del contenedor de
cada componente insertado se pueden configurar sus propiedades y
estilos, cada uno tiene una configuración diferente. Lo
más importante es que en cada portlet que añadimos
se
pueden configuran los roles de los usuarios que tienen acceso (de
lectura, edición…) a ese portlet.
Administrar el portal
Para administrar los usuarios, roles, permisos
añadimos un nuevo portlet al igual que hicimos con los
anteriores, en este caso es el portlet de Administración
> Administración de la empresa. Desde este componente
se pueden añadir/modificar/borrar usuarios, grupos de
usuarios, organizaciones, roles, administrar sus perfiles, sus
páginas públicas y privadas.
Lo primero será crear varios roles para los
usuarios. Creamos dos: Administrador y Usuario.
Una vez creados podemos definimos los permisos, por un lado
los de portlet que están
predefinidos en los propios portlets y por otro los permisos de portal
para poder administrarlo.
Lo siguiente será añadir una
organización (pestaña Organizaciones).
Una vez añadida la organización, desde
el listado seleccionamos sus acciones donde se
accede a todas las opciones de configuración y de forma
sencilla se crea la política de seguridad y de
gestión de usuarios de la organización.
Por último podríamos destacar que es
posible cambiar el aspecto del portal y definirlo a nuestro gusto
añadiendo nuevos estilos o bien seleccionando las distintas
plantillas que vienen integradas además del repositorio de
plantillas open source que hay a disposición de Liferay que
permiten personalizar completamente nuestro portal.
Conclusión
Liferay da para más de un tutorial, basta con trastear un poco con los distintos componentes que lleva
integrados para darse cuenta que es muy completo. A simple vista y sin
profundizar mucho en
él parece que pasa la prueba con nota. Se integra
perfectamente con tecnologías Java como ICEFaces o Facelets
a través de portlets que hacen reutilizables distintos
componentes en el portal. Compatible con bases de datos y servidores
más utilizados lo convierten en una opción a
tener muy en cuenta en el desarrollo de portales.
Hola: disculpa a mi me interesa descargarlo y usarlo para un proyecto de la escuela, pero no quiero la version de 30 dias, me podrias decir que version puedo utilizar??? que yo sepa, hay una version libre, que no es de prueba, pero no se donde esta ni como se llama, me puedes dar informacion por favor? XD de antemano gracias por tu apoyo …