2016-05-31 64 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調用獲取配置並存儲它,最好是在部署期間。有沒有辦法通過實施自定義介體來添加/刪除/更新註冊表項? –