组合视图 统一视图 树状图
讨论主题 [ 上一个 | 下一个 ]
toggle
Long Bao Ly
Add portlet programmatically
2010年11月5日 上午12:29
答复

Long Bao Ly

等级: New Member

帖子: 14

加入日期: 2010年11月4日

最近的帖子

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
2010年11月8日 上午9:20
答复

Jelmer Kuperus

等级: Liferay Legend

帖子: 1192

加入日期: 2010年3月10日

最近的帖子

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
2010年11月8日 下午6:46
答复

Long Bao Ly

等级: New Member

帖子: 14

加入日期: 2010年11月4日

最近的帖子

Thanks jelmer

I did what you told me and it works.

Hope this topic can help the others