111111111111111

原博客地址:http://hu437.iteye.com/blog/888397

在Liferay中以插件模式开发一些功能模块会非常方便,有时候希望在插件开发的页面中获取一些Liferay Portal的相关信息,如社区ID、主题、布局等,可以通过如下方法获取:



以获取GroupId为例:


Liferay版本:4.2.2(其他版本未测试,理论上应该差不多)





Java代码 
Layout layout = (Layout)request.getAttribute("LAYOUT");  
System.out.println(layout.getGroupId()); 

Layout layout = (Layout)request.getAttribute("LAYOUT");
System.out.println(layout.getGroupId());
这个里面的Layout是属性类:



Java代码 
com.liferay.portal.model.Layout 

com.liferay.portal.model.Layout 此类是在jar包:portal-service.jar里面,这个jar包在部署时是部署在tomcat/lib目录下面的,所以不需要另外的为插件工程引入特别的包。

获取当前用户ID
获取当前用户ID可以直接使用,request.getRemoutUser();



从request里面获取PortletRequest



Java代码 
PortletRequest portletRequest = (PortletRequest)request.getAttribute("javax.portlet.request"); 

PortletRequest portletRequest = (PortletRequest)request.getAttribute("javax.portlet.request"); 
这个属性是在什么被Liferay Portal添加到Request里面的呢?
Liferay的每次请求都要经过Liferay Portal容器的转发,在Liferay 4.2.2版本里面,这些信息是在



Java代码 
com.liferay.portal.events.ServicePreAction.java 

com.liferay.portal.events.ServicePreAction.java 这个类里面的,如果需要添加一些自己特殊的信息到request里面,可以修改此类的源码以支撑自己的应用。


原博客地址:http://hu437.iteye.com/blog/888397

你可能感兴趣的:(java,tomcat,Blog,ITeye)