IBM Worklight - 从适配器加载属性文件

Posted

技术标签:

【中文标题】IBM Worklight - 从适配器加载属性文件【英文标题】:IBM Worklight - load a properties file from an adapter 【发布时间】:2014-05-19 11:54:49 【问题描述】:

我需要从 javascript 适配器访问一些属性。 我知道我可以使用

访问 worklight.properties 文件
WL.Server.configuration.propertyName

但似乎当属性文件更改时需要重新启动服务器

保存新版本的 worklight.properties 后从 Eclipse 控制台:

[AUDIT   ] CWWKG0016I: Starting server configuration update.
[AUDIT   ] CWWKG0017I: The server configuration was successfully updated in 0.005 seconds.
[AUDIT   ] CWWKT0017I: Web application removed (default_host): http://hostname:hostport/ProjectName/
[AUDIT   ] CWWKZ0009I: The application ProjectName has stopped successfully.
[AUDIT   ] CWWKG0016I: Starting server configuration update.
[AUDIT   ] CWWKG0017I: The server configuration was successfully updated in 0.007 seconds.
[AUDIT   ] CWWKT0016I: Web application available (default_host): http://hostname:hostport/ProjectName/
[AUDIT   ] CWWKZ0001I: Application ProjectName started in 1.868 seconds.

有没有办法避免服务器重启,或者使用不同的 WL 机制来读取服务器端属性?

我的环境:

面向 Web 开发人员的 Eclipse Java EE IDE。版本:Kepler Service Release 2

IBM Worklight Studio 6.1

【问题讨论】:

【参考方案1】:

如果您真的想避免服务器重新启动并从文件中访问属性。您可以按照以下解决方法。

您可以从适配器访问 JAVA 代码 从 JAVA 代码尝试访问属性文件

我不确定您为什么要寻找上述其他一些机制,这只是我的项目中使用的一种解决方法。

【讨论】:

【参考方案2】:

在您的问题中,您没有解释为什么此服务器重启会困扰您。

在开发环境(Eclipse 的 Worklight Studio 插件)中,您所说的是正确的 - 每当您更改驻留在 Worklight 项目的 server 文件夹中的任何文件时,嵌入式 WAS Liberty 配置文件服务器都会重新启动。

这是预期的行为,是不可避免的。 此外,AFAIK 没有其他机制可以读取服务器属性。

【讨论】:

服务器重启在开发环境中不是问题,但在生产环境中似乎是一个潜在问题。正如您所说,与 WAS Liberty 配置文件直接相关,这是不可避免的。如果对于驻留在 sever 文件夹中的任何文件都是如此,我们没有机会修复它,那么请使用不同的应用程序服务器。 这在生产中不会发生,因为在生产中您需要部署war文件,到那时您应该考虑要使用的项目属性。如果您确实想更改战争文件,那么您需要遵循一些程序来更新服务器。

以上是关于IBM Worklight - 从适配器加载属性文件的主要内容,如果未能解决你的问题,请参考以下文章

IBM Worklight - 无法从客户端应用程序调用适配器过程

IBM Worklight - 无法从客户端调用插入查询的 SQL 适配器过程。我的编码有啥问题?

IBM Worklight 6.0.0.1 - 适配器中的超时设置

IBM Worklight - 从客户端发送 HTTP POST 请求

IBM Worklight - 无法显示使用 SQL 适配器检索到的数据

IBM Worklight:调用 Worklight 适配器时没有 SessionManager