2
我想創建一個可以在Liferay中的2個portlet之間共享的公共屬性文件。 或者說,它可以放在哪裏以便所有portlet都可以訪問同一個文件。如何通過Liferay中的2個不同portlet共享屬性文件?
我想創建一個可以在Liferay中的2個portlet之間共享的公共屬性文件。 或者說,它可以放在哪裏以便所有portlet都可以訪問同一個文件。如何通過Liferay中的2個不同portlet共享屬性文件?
如果你在同一個WAR有兩個portlet,那麼你可以有兩個在portlet和訪問的WEB-INF/src
文件夾使用com.liferay.util.portlet.PortletProps
類就像一個共同的屬性文件:
PortletProps.get("propertyName")
如果您的portlet打包在單獨的WARs,那麼你必須將該物業放置在portal-ext.properties
並使用com.liferay.portal.util.PropsUtil.get("propertyName")
訪問該物業。
但在我的情況下,有限制我不允許使用portal-ext.properties,因爲它們對所有portlet都是通用的。所以,我所做的就是訪問第一個portlet中的屬性文件,該文件被加載並保存在會話中,以便所有其他portlet都可以訪問它。 – rkg 2012-07-17 06:58:18
那麼,這完全沒有建議。會話僅供一個用戶使用。您沒有擁有該屬性副本的所有會話(乘以訪問該網站的用戶數)。如果會話失效,該怎麼辦?您必須將Portlet捆綁在一起。 – 2012-07-17 08:10:21
我無法使用** portal-ext屬性**。就我而言,如果會話失效,那麼應用程序將被重定向到登錄頁面。是否有其他解決方案通過不同的portlet共享屬性文件? – rkg 2012-07-17 08:30:52