为JBoss Fuse编写适配器

时间:2017-08-03 18:35:19

标签: apache-camel jbossfuse modbus-tcp

我想使用JBoss Fuse将Web服务调用转换为Modbus / TCP消息(反之亦然)。似乎没有为此协议存在第三方适配器,所以我想我必须自己编写它。这是怎么做到的?

目前,我最好的猜测是JBoss Fuse将Web服务调用的SOAP文件存储为文件并将其传递给Apache Camel。所以我要做的就是为这些文件格式编写转换器。这是对的吗?

1 个答案:

答案 0 :(得分: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项目。
  3. 请记住,组件只能与他们创建的系统进行对话和读取,即SalesForce不会理解SAP,Rest组件不会说SOAP,文件组件不会理解TCP。你需要映射/翻译。