Vista combinada Visión Plana Vista de árbol
Discusiones [ Anterior | Siguiente ]
toggle
Long Bao Ly
Add portlet programmatically
5 de noviembre de 2010 0:29
Respuesta

Long Bao Ly

Ranking: New Member

Mensajes: 14

Fecha de incorporación: 4 de noviembre de 2010

Mensajes recientes

Hi everyone!
I am using liferay 6.1.2 .I wanna add portlet programtically
This is my code

AddPortletController.java

/*----------------------------------------------------------
Layout layout = (Layout)request.getAttribute(WebKeys.LAYOUT);
LayoutTypePortlet layoutTypePortlet = (LayoutTypePortlet)layout.getLayoutType();

long userid=Long.parseLong(request.getRemoteUser());

layoutTypePortlet.addPortletId(userid,portletId,colunmId,-1);

LayoutLocalServiceUtil.updateLayout(layout.getGroupId(), layout.isPrivateLayout(),layout.getLayoutId(), layout.getTypeSettings());
return new ModelAndView("my JSP");

*-------------------------------------------------------------------------/
I call that Controller by using this code in my JSP
<a href='<portlet:renderURL>
<portlet:param name="action" value="AddPortletController"/>
<portlet:param name="link" value="CoreVNITT_WAR_CoreVNIT"/>
</portlet:renderURL>'">Link
</a>
It works when I click the link but the portlet I wanna add only shows up after refreshing my JSP.
I don't quite understand .Please help me out with this problem!!!!
Jelmer Kuperus
RE: Add portlet programmatically
8 de noviembre de 2010 9:20
Respuesta

Jelmer Kuperus

Ranking: Liferay Legend

Mensajes: 1192

Fecha de incorporación: 10 de marzo de 2010

Mensajes recientes

You are adding the portlet in a render method, do it in an action instead, after the action is executed the whole page will be re-rendered and it will work.
Long Bao Ly
RE: Add portlet programmatically
8 de noviembre de 2010 18:46
Respuesta

Long Bao Ly

Ranking: New Member

Mensajes: 14

Fecha de incorporación: 4 de noviembre de 2010

Mensajes recientes

Thanks jelmer

I did what you told me and it works.

Hope this topic can help the others

Participate in the State of Liferay Community 2017. Help the community and even win some prizes!