Crear un portlet en Liferay

De Dos Ideas.
Saltar a: navegación, buscar

Qué es un portlet?

Los portlets son componentes de las interfaces de usuario gestionadas y visualizadas en un portal web como Liferay.

PortletEnLiferay.png

Como crear un portlet para liferay

A partir del arquetipo de maven (liferay-portlet-archetype) se crea un proyecto web java. El proyecto se crea con la siguiente estructura de directorios.

CrearPortlet.png

Estructura del portlet

EstructuraPortlet.png


Los archivos de configuración se encuentran dentro de la carpeta WEB-INF.

liferay-display.xml: en este archivo se describe la categoría en la cual el portlet aparece en el menú.

<display>
	<category name="category.sample">
		<portlet id="demo" />
	</category>
</display>

liferay-portlet.xml: En este archivo podemos declarar el nombre del portlet, los css, js.

<liferay-portlet-app>
	<portlet>
		<portlet-name>demo</portlet-name>
		<icon>/icon.png</icon>
		<header-portlet-css>/css/main.css</header-portlet-css>
		<footer-portlet-javascript>/js/main.js</footer-portlet-javascript>
	</portlet>
	<role-mapper>
		<role-name>administrator</role-name>
		<role-link>Administrator</role-link>
	</role-mapper>
	<role-mapper>
		<role-name>guest</role-name>
		<role-link>Guest</role-link>
	</role-mapper>
	<role-mapper>
		<role-name>power-user</role-name>
		<role-link>Power User</role-link>
	</role-mapper>
	<role-mapper>
		<role-name>user</role-name>
		<role-link>User</role-link>
 	</role-mapper>
</liferay-portlet-app>


liferay-plugin-package.properties: En este archivo podemos indicar entre otras cosas las versiones que soporte el portlet como dependencias que necesite.

	name=demo
	module-group-id=liferay
	module-incremental-version=1
	tags=demo,
	short-description=
	change-log=
	page-url=http://www.liferay.com
	author=Liferay, Inc.
	licenses=LGPL
	liferay-versions=6.1.1, 6.1.2+, 6.1.20+

	required-deployment-contexts=\
		portal-compat-hook

portlet.xml: Se define el nombre con el cual el portlet se identifica (éste es único), el nombre con el cual se visualiza el portlet, la declaración de los roles de seguridad.

	<portlet>
		<portlet-name>demo</portlet-name>
		<display-name>demo</display-name>
		<portlet-class>com.liferay.util.bridges.mvc.MVCPortlet</portlet-class>
		<init-param>
			<name>view-jsp</name>
			<value>/view.jsp</value>
		</init-param>
		<expiration-cache>0</expiration-cache>
		<supports>
			<mime-type>text/html</mime-type>
		</supports>
		<portlet-info>
			<title>demo</title>
			<short-title>demo</short-title>
			<keywords>demo</keywords>
		</portlet-info>
		<security-role-ref>
			<role-name>administrator</role-name>
		</security-role-ref>
		<security-role-ref>
			<role-name>guest</role-name>
		</security-role-ref>
		<security-role-ref>
			<role-name>power-user</role-name>
		</security-role-ref>
		<security-role-ref>
 			<role-name>user</role-name>
		</security-role-ref>
	</portlet>

view.jsp: es la visualización del portlet.


Links http://www.liferay.com/documentation/liferay-portal/6.0/development/-/ai/portlet-development