2016-05-31 55 views
1

我想动态更改入站端点的某些参数。更确切地说,我有一个RabbitMQ入站端点,并且我想动态地指定服务器主机名,端口,队列名等。我该怎么做?WSO2ESB入站端点的动态配置

顺便说一句,如果它不能用现有的组件完成,那很好。如果我可以创建一个自定义介体来从消息上下文中读取这些属性,然后以某种方式修改RabbitMQ入站端点,那么它也是非常好的/可以接受的,只是如何?

+0

什么是您正在尝试的WSO2ESB版本? – VizZy

+0

该版本是4.9.0 –

回答

0

将入站端点参数指定为注册表值。

除了内联指定参数值之外,还可以将参数值指定为注册表项。将参数值指定为注册表项的优点是只需通过更改注册表项值即可在不同的环境中使用相同的入站端点配置。

<inboundEndpoint xmlns="http://ws.apache.org/ns/synapse" name="file" sequence="request" onError="fault" protocol="file" suspend="false"> 
    <parameters> 
     ............... 
     <parameter name="transport.vfs.FileURI" key="conf:/repository/esb/esb-configurations/test"/> 
     ............... 
    </parameters> 
</inboundEndpoint> 

有关详细说明,请参阅[1]。

[1] - https://docs.wso2.com/display/ESB490/Working+with+Inbound+Endpoints

+0

谢谢,但我认为这并不能完全解决我的问题,因为据我所知,注册表通过管理控制台或可能通过XML文件填充。不过,我想以编程方式更改这些参数。也就是说,我想通过RMI或REST调用获取配置并存储它,最好是在部署期间。有没有办法通过实施自定义介体来添加/删除/更新注册表项? –