2017-07-19 123 views
1

我想知道是否有方法在.properties文件(使用Java)中维护某些自定义配置值,并在ESB启动时加载属性并使用自定义属性调解流程中的值?任何想法都会很有帮助。WSO2 ESB中的可配置值类似于.properties文件

+0

1.使用哪个版本的ESB的? 2.启动过程中是否应该使用这些数值,还是仅用于调解流程? –

+0

嗨Murali,我使用ESB 5.0.0和值应该加载一次,并在调解流中使用。它不应该从每个请求响应周期的文件中读取。 – StO

回答

0

我同意将这些属性保存在XML文件中,然后上传到您的注册表的独立于代码的建议。 这样,属性可以更新或删除,而无需触摸代码。 如果您不得不使用Java .properties文件,那么建议创建一个作为库部署的JAR,然后您可以从ESB序列中调用该JAR。

0

对于类似的用例,我们在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"/>