Página de descarga de Liferay:
http://sourceforge.net/projects/lportal/files/Liferay%20Portal/
Ir a la versión deseada y descargar dos ficheros:
- El propio war de Liferay: liferay-portal-6.1.x-<date>.war
- El fichero de dependencias: liferay-portal-dependencies-6.1.x-<date>.zip
Guía oficial de instalación:
https://www.liferay.com/es/documentation/liferay-portal/6.1/user-guide/-/ai/lp-6-1-ugen11-installing-liferay-on-oracle-weblogic-103-0
Guía completa en
PDF.
Dejar los jars que hay en el fichero de dependencias, en el directorio Oracle\Middleware\user_projects\domains\${MyDomai}\lib
Configurar el datasource de liferay. Se necesita un fichero
portal-ext.properties que estará directamente en el directorio del dominio (Oracle\Middleware\user_projects\domains\${MyDomai}):
jdbc.default.jndi.name=jdbc/LiferayPool
Se necesita indicarle a liferay cuál será su base de datos, y para ello se le pasa el nombre JNDI del datasource que crea weblogic.
Por defecto la base de datos será MySQL, pero se puede cambiar metiendo más propiedades en portal-ext.properties
Si la base de datos no es oracle, también hay que dejar en el directorio lib del domain el jar con el driver.
Además, si es weblogic 11g (10.3.5) hay que referenciar ese jar desde el propio classpath, seguramente debido a un bug del servidor.
Se edita el fichero setDomainEnv.cmd, que está en el directorio bin del domain y se añade la siguiente línea al final:
set CLASSPATH=C:\Oracle\Middleware\user_projects\domains\${MyDomain}\lib\mysql-connector-java-commercial-5.1.14-bin.jar;%CLASSPATH%
Crear un fichero
portal-setup-wizard.properties y dejarlo también en el raíz del dominio, junto al portal-ext.properties.
setup.wizard.enabled=true
Este fichero lo lee la primera vez que arranca para inicializar la base de datos. Más adelante habrá que cambiarlo para que no haga esto siempre, y además inidicarle donde está el directorio de autodeploy.
Actualizar descriptor en
weblogic.xml dentro del war de liferay (el que se descargó de su página).
<?xml version="1.0"?>
<weblogic-web-app
xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.2/weblogic-web-app.xsd"
>
<jsp-descriptor>
<keepgenerated>true</keepgenerated>
<page-check-seconds>60</page-check-seconds>
<precompile>true</precompile>
<precompile-continue>true</precompile-continue>
</jsp-descriptor>
<container-descriptor>
<prefer-application-packages>
<package-name>org.mozilla.*</package-name>
</prefer-application-packages>
<optimistic-serialization>true</optimistic-serialization>
<show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor>
<context-root>/</context-root>
<library-ref>
<library-name>jsf</library-name>
<specification-version>1.2</specification-version>
<implementation-version>1.2</implementation-version>
<exact-match>false</exact-match>
</library-ref>
</weblogic-web-app>
Desplegar
jsf-1.2.war como una librería.
Este war está en C:\Oracle\Middleware\wlserver_10.3\common\deployable-libraries\.
Después desplegar liferay como una aplicación web.
Una vez iniciado, para entrar en el portal hay que ir a
http://localhost:7001/.
Liferay habrá creado unos directorios en la carpeta de dominio de weblogic (!!), además de un fichero properties de configuración:
Hay que copiar el fichero
portal-setup-wizar.properties de este directorio, al que ya hay en el directorio del domain y sobreescribirlo. Con esto se evita que liferay esté inicializando el portal cada vez que arranca.
admin.email.from.name=Test Test
liferay.home=C:/Oracle/MIDDLE~1/USER_P~1/domains
admin.email.from.address=test@liferay.com
setup.wizard.enabled=false
Para desplegar un portlet el procedimiento será el siguiente:
- Generar el war del portlet.
- Dejarlo en el directorio deploy de liferay, el que está en en user_projects/domains.
- Añadirlo al portal desde liferay.
Al dejar el portlet en el directorio de deploy de liferay, se lee automáticamente, se le cambia el fichero web.xml y se envía al directorio de autodeploy de weblogic, que está dentro del domino.