Una funcionalidad que acabo de descubrir en el Blog de Liferay es crear el PortletUrl en JavaScript.
Un ejemplo de PortletUrl es:
http://localhost:8080/web/guest/home?p_p_id=EDITAR_CUENTA&p_p_lifecycle=0&p_p_state=maximized&p_p_mode=view&_EDITAR_CUENTA_struts_action=%2Feditar_cuenta%2Fview
Aca le estoy pasando el portlet id, el estado del portlet, la fase del ciclo de vida, la acción de struts a ejecutar y 1 parametro (podrian ser muchos más). Anteriormente la manipulación de esta url era medio complicada, ya que solo se podia generar a traves de JAVA o mediante una concatenación kilometrica de varios strings. Con esta funcion nos proporciona mayor flexibilidad a la hora de programar.
<script type="text/javascript">
var portletURL = new Liferay.PortletURL(_PHASE);
portletURL.setParameter("key1", "value");
portletURL.setParameter("key2", "value");
portletURL.setPortletId(_PORTLET_ID);
</script>
<a href="javascript: portletURL.toString()">Go to</a>Los valores que puede tomar _PHASE son:
- ACTION_PHASE
- RENDER_PHASE
- RESOURCE_PHASE
También existen los siguientes métodos que permiten crear el PortletUrl según _PHASE:
- Liferay.PortletURL.createActionURL();
- Liferay.PortletURL.createRenderURL();
- Liferay.PortletURL.createResourceURL();
Estos son los métodos restantes de la clase Liferay.PortletURL:
- setCopyCurrentRenderParameters: function(copyCurrentRenderParameters);
- setDoAsUserId: function(doAsUserId);
- setEncrypt: function(encrypt);
- setEscapeXML: function(escapeXML);
- setLifecycle: function(lifecycle);
- setName: function(name);
- setParameter: function(key, value);
- setPlid: function(plid);
- setPortletConfiguration: function(portletConfiguration);
- setPortletId: function(portletId);
- setPortletMode: function(portletMode);
- setResourceId: function(resourceId);
- setSecure: function(secure);
- setWindowState: function(windowState);
- toString: function();


Buenas a todos!!
Mi problema es el siguiente..En el portlet del Asset Publisher me gustaria q en vez de mostrarme el titulo de un contenido y una href con la URL (que al pincharla me redirecciona al detalle de ese contenido ) pudiera redireccionar directamente a esa URL de REF mediante codigo para que directamente me apareciera lo q pasaria si pinchara en ese href (he ampliado funcionalidad en diferentes jsp y por eso no me vale con mostrar el detalle de ese contenido simplemente, tengo q seguir el curso de mostrar el detalle pasando por todas las jsp por las q se pasa normalmente).
He buscado bastante pero he sido incapaz de saber como redireccionar a la URL q crea el propio AssetPublisher..
Alguien me podria dar alguna idea??
Muchas gracias y espero q tenga solucion esto..