【问题标题】:Axis2 / WSO2 ESB - need clarificationAxis2 / WSO2 ESB - 需要澄清
【发布时间】:2014-03-04 12:48:30
【问题描述】:

我被指派使用 wso2 esb (4.8.1) 进行简单的 POC,我之前使用 wso2esb 或任何其他此类的经验为零,并且我正在学习中。

我的目标是从远程第三方接收带有二进制数据的 TCP 数据包,转换为 SOAP,做一些事情,转换回二进制并发送响应。潜伏在互联网上,我遇到过这样的定义:Builder, MessageFormatter, TransportSender and TransportListener

afaik
Builder 用于将传入数据转换为 SOAP
MessageFormatter - 将传出数据从 SOAP 转换为预期类型
TransportSender - 通过线路发送转换为预期类型的​​ SOAPTransportListener - 接收来自网络的请求,并将其转换为 SOAP

1) TransportSenderListener 自己做转换 SOAP二进制文件还是他们使用 Builder / MessageFormatter 不知何故,这四个之间的流程是什么?

2) 传输是否应该与构建器/格式化器完全分离?

3 不重要) 在axis2.xml中注册BuilderFormatter,我需要指定contetType,这是否意味着它们只适用于HTTP请求?即使它是真的,这对我不利,因为我期待原始二进制数据,我将如何为相同的内容类型注册两个单独的格式化程序/构建器?


更新 1: 引用here:

传输发送方根据其发送 SOAP 消息 配置。 传输接收者等待 SOAP 消息

总是这样吗?我的意思是,发送者和侦听器仅适用于 SOAP 消息?

【问题讨论】:

    标签: wso2 axis2 wso2esb


    【解决方案1】:

    Axis2 是一个 Web 服务引擎,它通过使用 SOAP 作为位于各种传输之间的规范形式,为将各种传输插入在一起提供了强大的支持。

    这四种类型(发送者/侦听者、构建者/格式化者)之间的流程并不完全一致。 TransportListeners 将来自线路的传入消息序列化为 SOAP 格式(使用构建器)。 TransportSenders 读取 SOAP 消息并将其解轨为传出的线路格式并将其放置在线路上(使用格式化程序)。这里的关键是我们可以让消息从一个传输进入axis2,然后在完全不同的传输上发送出去。

    将这一切绑定在一起的是消息上下文对象,它在各个axis2阶段之间传递。

    您应该看一下Axis2 Architecture guide,还有一些需要看的东西是BuilderFormatter 接口,它们可能会阐明它们的用途。

    【讨论】:

    • 谢谢,我正在取得进展,但现在我被调到其他任务,我肯定会在一两天内回到 ESB
    猜你喜欢
    • 1970-01-01
    • 2011-11-09
    • 2012-07-18
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 2012-06-02
    • 2017-01-18
    • 2016-06-30
    相关资源
    最近更新 更多