WSO2 ESB中的可配置值类似于.properties文件
问题描述:
我想知道是否有方法在.properties文件(使用Java)中维护某些自定义配置值,并在ESB启动时加载属性并使用自定义属性调解流程中的值?任何想法都会很有帮助。WSO2 ESB中的可配置值类似于.properties文件
答
这可能是你在找什么: https://dzone.com/articles/retrieve-values-xml-config(页面日〜2013年)
这表明你怎么能有在WSO2的注册表文件,并在您的代理阅读。 (存储在注册表中的文件可以包含您的属性)
答
我同意将这些属性保存在XML文件中,然后上传到您的注册表的独立于代码的建议。 这样,属性可以更新或删除,而无需触摸代码。 如果您不得不使用Java .properties文件,那么建议创建一个作为库部署的JAR,然后您可以从ESB序列中调用该JAR。
答
对于类似的用例,我们在global_parameter.xml
文件中有一个自定义的配置值/参数或常量,并在治理注册表中进行管理(根据您的堆栈进行确定)。例如,global_parameter.xml
可以如下所示。
<custom>
<Version>2.3</Version>
<Type>FOR</Type>
</custom>
我们可以通过序列加载参数,然后通过重用序列文件来使用参数。
<sequence xmlns="http://ws.apache.org/ns/synapse" name="loadProperties_seq">
<property xmlns:ns="http://org.apache.synapse/xsd" name="localProperties" expression="get-property('registry', 'gov:/common/utils/properties/global_parameter.xml')" scope="default" type="OM"/>
</sequence>
参考属性..
<property name="url_reg" expression="//custom/Version"/>
<property name="user_reg" expression="//constants/Type"/>
1.使用哪个版本的ESB的? 2.启动过程中是否应该使用这些数值,还是仅用于调解流程? –
嗨Murali,我使用ESB 5.0.0和值应该加载一次,并在调解流中使用。它不应该从每个请求响应周期的文件中读取。 – StO