如何在liferay中设置门户范围的全局变量?

发布于 2024-12-22 16:36:57 字数 324 浏览 2 评论 0原文

我目前正在开发一个门户,我需要使用Liferay作为门户服务器。

我的应用程序将具有一些全局设置,我需要在门户中的所有 portlet 中访问这些设置。

加载此类配置设置的最佳实践是什么?我希望从配置文件/数据库中读取这些配置设置。但它应该在应用程序启动时只读一次。我不希望为每个请求从数据库/文件中读取设置。

另外,我将使用模板的速度框架,我可以在速度模板中读取相同的全局变量吗?

我可以将这些全局变量放入我的 Portal-ext.properties 文件中吗?如果可以,我如何在其中加载默认值?

任何其他方法也会有帮助,

提前致谢

I am currently working on a portal and I need to use Liferay as the Portal server.

My application will be having some global settings, which i need to access in all the portlets in my portal.

what is the best pratice to load such configuration settigs? I want those configuration settings to be read from a configuration file/database. but it should be read only once at the application startup. I dont want the settings to be read from database/file for each request.

Also, I would be using velocity framework for templates, can i read the same global variables in my velocity templates?

Can i put those global variables in my portal-ext.properties file and if Yes, how can i load default values in it?

Any other approaches would also help,

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

帅气尐潴 2024-12-29 16:36:57

将以下内容添加到portal-ext.properties

my.key=myValue

您可以为键实现PropsKeys:

public class ExtPortalKeys implements PropsKeys {
public static final String MY_KEY = "my.key";
}

然后调用:

PrefsPropsUtil.getString(companyId, ExtPortalKeys.MY_KEY);

respects

Add the following to portal-ext.properties:

my.key=myValue

You can implement PropsKeys for the key:

public class ExtPortalKeys implements PropsKeys {
public static final String MY_KEY = "my.key";
}

and then call:

PrefsPropsUtil.getString(companyId, ExtPortalKeys.MY_KEY);

regards

孤单情人 2024-12-29 16:36:57

一种方法是使用登录后操作挂钩。

将您的类定义到portal-ext.properties 文件

login.events.post=com.xxx.PostLoginAction

在该类中,您可以从文件/数据库读取配置或属性。您可以将它们设置为一些可由所有 portlet 共享的全局会话值。

有关登录后操作和会话共享的更多信息,请访问以下链接

http://www.liferay.com/community/wiki/-/wiki/Main/Custom+Post-login+Redirect

http://www.liferay.com/community/wiki/-/wiki /主/会话+共享

One Approach would be to use login post action hook.

Define your class to the portal-ext.properties file

login.events.post=com.xxx.PostLoginAction

In the class you can read the configuration or properties from file/database. You can set these up as some global session values which can be shared by all the portlets.

More information on post login action and session sharing is available in the links below

http://www.liferay.com/community/wiki/-/wiki/Main/Custom+Post-login+Redirect

http://www.liferay.com/community/wiki/-/wiki/Main/Session+Sharing

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文