0

我有一个网络服务。它的域和端口可以更改。所以我想从文件或数据库中读取端口和域。当这些信息发生变化时,我会在数据库或文件中更新它们。

适配器 XML:

<domain>${adp.hostname}</domain>
<port>${adp.port}</port>

worklight.properties:

adp.hostname=localhost
adp.port=10080

这工作正常。但我想从文件或数据库中获取adp.hostname和。adp.port

4

1 回答 1

0

关于适配器要记住的一点是,一旦部署适配器 XML ,您就无法实时更改适配器 XML中设置的任何属性。

一旦适配器被部署,它就会被转换为一个对象并存储在内存中。那么,此时,您无法再与其“设置”进行交互。

您唯一能做的就是在部署适配器之前决定这些属性的值。例如,QA/TEST/UAT/PROD 环境的一组不同属性...


要设置外部属性,从 Worklight 6.0 及更高版本开始,您可以阅读此文档主题:使用 JNDI 环境条目在生产中配置 IBM Worklight 项目

专门针对其 server.xml 中的 Tomcat:

<Context docBase="app_context_path" path="/app_context_path">
  <Environment name="publicWorkLightPort" override="false" 
    type="java.lang.String" value="9080"/>
</Context>
  1. 您更改app_context_path为项目的上下文(项目名称)
  2. environment您为所需的每个属性添加子元素

重要的是要记住:这些属性也必须存在于worklight.properties; 这些将是默认属性,如果使用上面的示例,它们将被覆盖,并且将使用环境属性。

在上面的示例中,您可以看到它将替换默认属性publicWorkLightPort

于 2014-01-16T10:32:54.867 回答