2017-08-03 111 views
0

我想使用JBoss Fuse將Web服務調用轉換爲Modbus/TCP消息(反之亦然)。這個協議似乎沒有第三方適配器,所以我想我必須親自編寫它。這是如何完成的?爲JBoss保險絲寫入適配器

當前,我最好的猜測是JBoss Fuse將Web服務調用的SOAP文件存儲爲文件並將其傳遞給Apache Camel。所以我所要做的就是爲這些文件格式編寫一個轉換器。它是否正確?

+0

不要試圖理解我的問題......我用一種錯綜複雜的方式描述了它,因爲當我寫它時我感到非常困惑。但是,@Namphibian給出的答案很好。他們回答了我試過的問題(但沒有成功)。 –

回答

2

你的假設是不正確的。根據您用於Web服務調用的組件,底層技術會有所不同。例如,使用CXF組件調用Web服務意味着CXF執行服務交互。另外我從來沒有見過一個SOAP文件。 SOAP是一種不是文件類型的協議。也許你正在考慮wsdl?

兩種方式來實現你想要什麼:

  1. 創建一個將作爲一個Modbus生產者和消費者的組件。這是一條漫長的道路,ModBus/TCP組件只會讀/寫Modbus協議,您仍然需要將SOAP/Rest或其他協議轉換爲ModBus協議。
  2. 使用TCP組件(例如Netty,MINA或MINA2)來編寫ModBus。在GitHub上看看這個Modbus TCP client/server implementation in Java with Netty 4.x項目。

記住組件只能從它們創建的系統中交談和讀取,即SalesForce不會理解SAP,Rest組件不會說SOAP,文件組件不理解TCP。你將需要映射/翻譯仍然。