Liferay + WorkFlow

La mayoría ya sabe para que son los Workflow y con la gran información que hay sobre el tema en Internet en este POST no voy a profundizar en explicarlo una vez más. Así que voy a resumir la instalación en la que estos días he tenido que pegarme y como se puede configurar para el CMS Liferay.

Las versiones utilizadas para esta instalación fueron liferay portal 5.2.3 con bundle tomcat 6.0 configurada para mysql 5.0, mule-web 5.2.0.1, jbpm-web-5.2.0.1 y workflow portlet 5.2.0.1 los cuales pueden ser descargados del sitio oficial de Liferay

Pasos para la instalación:

  1. Descargarse los plugins anteriormente mencionados ( mule-web 5.2.0.1, jbpm-web-5.2.0.1 y workflow portlet 5.2.0.1)
  2. Ya que el fichero portal-ext.properties no existe es necesario crearlo en la siguiente ruta en el cual agregamos los datos necesarios para realizar nuestra conexión con MySQL:
    vi liferay-5.2.3/tomcat-6.0.18/webapps/ROOT/WEB-INF/classes/portal-ext.properties
    #Configuration of 	database to use MySQL
    schema.run.enabled=true
    schema.run.minimal=true
    jdbc.default.driverClassName=com.mysql.jdbc.Driver
    jdbc.default.username=root
    jdbc.default.password=password
    jdbc.default.url=jdbc:mysql://localhost/liferay?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
  3. Arrancar liferay lo cual creara las tablas necesarias en MySQL.

  4. Desplegar los portlets (mule-web y jbmp-web) usando la carpeta de autodeploy de Liferay.
  5. Ejecutar el script sql el cual creara las tablas necesarias para que el workflow portlet funcione correctamente.
    mysql -u root -p liferay < liferay-5.2.3/tomcat-6.0.18/webapps/jbpm-web/WEB-INF/sql/mysql.create.sql
  6. Ya que Liferay viene configurado por defecto para usar HSQL y nuestra configuración es con mysql es necesario modificar el siguiente fichero con el cual definiremos nuestra base de datos.
    (comentar hsql y descomentar MySQL)
    vi liferay-5.2.3/tomcat-6.0.18/webapps/jbpm-web/WEB-INF/classes/hibernate.cfg.xml
  7. Añadir la siguiente linea en portal-ext.properties
    jbi.workflow.url=http://localhost:8080/mule-web/workflow
  8. Apagar y reiniciar liferay
  9. Deployar el workflow-portlet usando el autodeploy
  10. Después del despliegue realizaremos modificaciones sobre el código de los portlets workflow y jbmp, los cuales simplemente se pueden hacer reemplazando las clases originales por las que se encuentran en el siguiente enlace fixed.zip. (Modificaciones hechas por Rogier de Regt).

  11. Reiniciar Liferay.
  12. Para comprobar que todo funciona correctamente , puedes hacerlo copiando y pegando el código de los diferentes ficheros (datatypes_definition.xml , holiday_definition.xml o websale_definition.xml encontrados en /liferay-5.2.3/tomcat-6.0.18/webapps/jbpm-web/WEB-INF/definitions/ ) cuando defines un nuevo workflow.

WordPressTwitterBlogger PostShare

2 thoughts on “Liferay + WorkFlow

  1. Tal vez me equivoco, pero creo que en la linea…

    mysql -u root -p liferay < liferay-5.2.3/tomcat-6.0.18/webapps/jbpm-web/WEB-INF/sql/mysql.create.sql

    …la base de datos sobre la que se deben ejecutar las SQL es jbpm y no liferay.

    Un saludo.

    • Hola Juanma,

      La base de datos que use para esta instalación, la llame “liferay”. Puedes observar que en la definición para la conexión a la base de datos se hace para la base de datos “liferay”.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>