Liferay 6: Cómo crear nuevos tipos de contenido
0. Índice de contenidos.
- 1. Entorno
- 2. Introducción
- 3. Paso 1: Modificar portal-ext.properties
- 4. Paso 2: Modificar LanguageXXX.properties
- 5. Resultado
- 6. Conclusiones
1. Entorno
Este tutorial está escrito usando el siguiente entorno:
- Hardware: Portátil 2,4 Ghz Intel Core2 Duo P8600
- Sistema Operativo: Windows 7 Profesional x86 SP1
- Instalada la versión de Liferay Portal 6.0.6 (versión Integrada en Tomcat 6)
2. Introducción
Lo primero que nos llama la atención cuando creamos un Web content en Liferay es que lleva por defecto varios tipos predefinidos:
En este tutorial os contamos como dar de alta en liferay nuevos tipos de contenido.
Paso 1: Modificar portal-ext.properties
Este archivo se debe ubicar en «LIFERAY_HOME/tomcat-6.0.29/webapps/ROOT/WEB-INF/classes» (siempre y cuando lo hayamos creado previamente) y sirve para sobrescribir las propiedades descritas en el archivo «portal.properties» dentro del JAR «LIFERAY_HOME/tomcat-6.0.29/webapps/ROOT/WEB-INF/lib/portal-impl.jar: «
Si no existe creamos el archivo portal-ext.properties que sobrescribe (tiene preferencia en la carga del archivo en el arranque) la propiedad «journal.article.types» existente en «portal.properties»:
Este sería un ejemplo donde agregaremos «tutorials» en «portal-ext.properties»:
#Limitaciones de imagenes journal.image.small.max.size=0 com.liferay.portal.upload.UploadServletRequestImpl.max.size=104857600 #Tipos de contenido journal.article.types=announcements,blogs,general,news,press-release,test,tutorials
4. Paso 2: Modificar LanguageXXX.properties
Una vez modificados los tipos, debemos editar los ficheros «LanguageXXX.properties» para cada lenguaje que necesitemos. Estos archivos también se ubican dentro del jar «portal-impl.properties»:
En nuestro caso editaremos y almacenamos los archivos «Languaje.properties», «Languaje_en.properties» y «Language_es.properties», añadiendo los textos (por mantener la misma estructura insertamos las propiedades en orden alfabético) que se mostrarán en los listados de Liferay:
5. Resultado
Una vez realizados los cambios, reiniciamos nuestro servidor y ya nos debería aparecer en los listados el nuevo tipo de contenido como se muestra:
6. Conclusiones
Sobrescribiendo las propiedades en «portal-ext.properties» es una tarea bastante habitual dentro de la configuración de Liferay 6, aunque sería mejor que los tipos estuvieran almacenados en BBDD y no en una librería que puede sobrescribirse si actualizamos la versión de Liferay 6. Hay que tener mucho cuidado con esto y llevar un documento de los cambios que se han realizado en la librería. Otra opción sería modificar el «portal.properties» directamente, pero eso nos complica la tarea que comentaba antes.
Cualquier duda o sugerencia pod s comentarlo.
Saludos.
Para los languages, no es necesario entrar en el portal-impl.jar. Esto es totalmente desaconsejado desde Liferay Inc. Se deben modificar o sobreescribir, desde un liferay-plugin o liferay-hook. Por lo demás felicitar la iniciativa a compartir el conocimiento.