我有一个自定义 portlet,它使用我在 portlet-conf.properties 中编写的 2 个参数。
因此,如果需要,我想更改它们,方法是在 portlet 的配置菜单中的设置选项卡中输入两个新值。
选项卡设置:http://imageshack.us/photo/my-images/155/samplesz.png/
我有我的 portlet 的 Controller 和 jsp,还有一个 conf.jsp 和 ConfigurationActionImpl,它实现了渲染,对于该选项卡,目前返回的 conf.jsp 和 processAction 为空。
如何对我的 jsp 和 configAction 进行编码,使其具有 2 个输入文本,从而可以修改 portlet-conf.properties 中的两个参数?
我希望,当我们单击提交按钮时,更改属性文件上变量的值。 如果可能,在输入框中显示默认值和实际值。
问候。 谢谢
最佳答案
我认为您不能像那样覆盖属性值。属性文件应该用作 portlet 配置。
您必须使用 PortletPreferences
来实现相同目的。
你可以做的是在你的conf.jsp
中,创建2个输入框和提交按钮。当您单击提交按钮时,您的 ConfigurationActionImpl
的 processAction()
将被调用。在此方法中,获取 PortletPreferences
并将值保存到其中。
属性文件将用作首选项的默认值。所以,流程是
1) 当用户第一次配置 portlet 时,您将在 portlet 首选项中获得空值,因此从属性文件加载。
2) 用户可以更改值,当他/她单击提交按钮时,将其保存到 PortletPreferences
3) 下次,从 PortletPreferences
中获取值。
希望这会有所帮助。
关于java - 如何通过liferay中的portlet conf选项卡修改属性文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11096367/