sábado, 28 de abril de 2012

Liferay 6.0 : Instalacion con Apache Tomcat sobre Windows

Luego de configurar mi ambiente de desarrollo (Configuracion de Ambiente Windows) Procederemos a instalar un Liferay en un servidor Apache Tomcat  sobre Windows.

1.Preparacion de directorios

Prepararemos una estructura de carpetas donde se ubicara nuestro proyecto Liferay Portal.

Nos ubicamos en un disco del sistema y creamos una carpeta donde pondremos el  ambiente de desarrollo de nuestro Portal (D:\Liferay)
Descomprimimos el archivo [liferay-portal-tomcat-6.0.6-20110225.zip] que contiene el proyecto Liferay  por defecto sobre el cual trabajaremos.
Tendremos una carpeta llamada liferay-portal-6.0.6 en cuyo interior se encuentra todo la configuración predeterminada de carpetas del portal.
Carpeta descomprimida donde esta el portal



Ingresamos al directorio y veremos 4 carpetas:
-data: En esta Carpeta se almacenaran las imágenes y documentos que subamos al portal.
-deploy: Donde se copiaran los wars de las aplicaciones que hagamos para ser ejecutado en tiempo de ejecución (portlets,temas,layouts,etc).
-license: la licencia.
-tomcat-6.0.29: Es el servidor Apache Tomcat preconfigurado para Liferay que usaremos para correr la aplicación.
Estructura de directorios

2.Preparación del Servidor

Liferay puede ser deployado en múltiples servidores de aplicación, se puede tener un Liferay sobre un servidor de aplicaciones pre configurado (como el ejemplo) o configurar un servidor existente.
Para este caso usaremos el servidor Apache Tomcat en su versión 6 pre configurado para Liferay, configurar un servidor para que soporte Liferay es un proceso individual según sea el tipo de servidor de aplicaciones que utilicemos.

Liferay viene por defecto con una aplicación de ejemplo instalada, es decir si levantamos el servidor sin hacer ningún cambio funcionara normalmente ello a que Liferay usa una base de datos embebida en memoria llamada hsql que solo sirve para casos demostrativos no para ambientes de desarrollo y menos de producción, procederemos a levantar el portal tal y como está sin ninguna configuración externa sobre ella usara hsql para levantar.

Para levantar el servidor Apache Tomcat nos ubicamos en la carpeta donde está instalado [tomcat-6.0.29]  e ingresamos a la carpeta bin ahí encontraremos un archivo llamado startup.bat el cual ejecutamos con lo cual el aplicativo comenzara a levantar.
Servidor levantado

Luego en el navegador en la dirección http://localhost:8080 se cargará el aplicativo de ejemplo para probar las funcionalidades del portal.

Liferay levantada en memoria con aplicacion de ejemplo


 
Luego detenemos el servidor para continuar.
Para detener el servidor Apache Tomcat nos ubicamos en la carpeta donde está instalado [tomcat-6.0.29]  e ingresamos a la carpeta bin ahí encontraremos un archivo llamado shutdown.bat el cual ejecutamos con lo cual el aplicativo comenzara a cerrarse.


3.Preparación del ambiente nuevo
Modificaremos la instalación por defecto de Liferay para crear un proyecto base sin data de prueba solo con los datos necesarios para poder desarrollar para ello debemos eliminar ciertas carpetas y crear archivos de configuración.

Entramos a la carpeta donde se instaló el Apache Tomcat pre configurado [tomcat-6.0.29] y procedemos a limpiar el servidor; eliminar todo los archivos dentro de las carpetas: work y temp


Dentro de la carpeta [tomcat-6.0.29] ubicamos la carpeta de despliegue del server que es webapps veremos ciertos portlets preinstalados y la carpeta ROOT conteniendo la instancia de Liferay instalada.
Carpeta webapps por defecto
 
De todas esas carpetas solo dejaremos las carpetas necesarias: ROOT y tunnel-web normalmente  las demás carpetas las eliminaremos.

Carpeta webapps depurada
 
Hasta acá tenemos el Liferay preparado para levantar limpio de datos de prueba solo faltaría configurar los accesos a datos.

4.Configuración de propiedades del Portal
Liferay posee un archivo properties donde se definen muchos de sus atributos principales una de ellas el acceso a la base de datos, para ello debemos crear dicho archivo que se debe llamar portal-ext.properties y ubicarlos en la carpeta [tomcat-6.0.29\webapps\ROOT\WEB-INF\classes]
Archivo portal-ext.properties creado
Una vez creado debemos configurar la conexión a una base de datos donde el portal al instalarse por primera vez genere sus tablas y dependencias. Liferay soporta diferentes  base de datos (MySQL, Oracle, SQLServer, etc.) para conectarse a cada una de ella se debe tener el driver y configuración particular.
Para ello debemos tener creado una base de datos exclusiva para el portal en mi caso la llamare liferayDemo  en la base de datos que poseas (MySQL, Oracle, SQLServer, etc.), debemos poner una serie de propiedades según la base de datos a la cual nos conectemos.
Editaremos el archivo portal-ext.properties y agregaremos la configuración necesaria para conectarse a la base de datos:

##Propiedades de conexión a base de datos
jdbc.default.driverClassName=<Driver de Base de datos>
jdbc.default.url=<URL de acceso>
jdbc.default.username=usuario
jdbc.default.password=clave

Además de ello debemos copiar el driver necesario para ello en la carpeta de jars externos [tomcat-6.0.29\lib\ext] .
 
Con eso estaríamos listos para levantar un proyecto base de desarrollo sobre Liferay.
Levantamos el server y veremos el ambiente base ejecutado en la ruta http://localhost:8080 .

 Con esto tenemos un ambiente Liferay vacio para poder comenzar a desplegar nuestros plugins desarrollados.



4 comentarios:

  1. Buenas noches Andy M. Rodriguez, desde ya agradesco por compartir tus conocimientos en la red.
    Quisiera pedirte una ayuda adicional para la configuración de la base de datos.
    Cree una base de datos que esta en el localhost con el nombre liferayDemo utilizando MySQL, ¿Cuál es el valor que tengo que cagar las dos primeras lineas en la portal-ext.properties?
    ¿Como identifico el archivo (driver) que debo cargar en la carpeta ext?
    Si me podrías dar una manito más

    ResponderEliminar
    Respuestas
    1. Estimado Gilberto para MySQL seria asi:

      #
      # MySQL
      #
      jdbc.default.driverClassName=com.mysql.jdbc.Driver
      jdbc.default.url=jdbc:mysql://localhost/mibasededatos?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
      jdbc.default.username=
      jdbc.default.password=

      Para otras bases de datos:


      http://www.liferay.com/es/community/wiki/-/wiki/Main/Portal+Properties+6.0.5#section-Portal+Properties+6.0.5-JDBC

      Espero te ayude. Saludos

      Eliminar
  2. Que tal oye y para pasar pero a sql server como le hago
    saludos

    ResponderEliminar
    Respuestas
    1. Para SQL Server:

      #
      # SQL Server
      #
      jdbc.default.driverClassName=net.sourceforge.jtds.jdbc.Driver
      jdbc.default.url=jdbc:jtds:sqlserver://localhost/lportal
      jdbc.default.username=sa
      jdbc.default.password=

      El driver que usa para este caso es el jtds.jar q se encuentra en el tomcat/lib/ext con l ocual lifera yse puede conectar correctamente a SQL Server.

      Eliminar