将java对象传递给HTTP连接器

时间:2014-09-16 16:26:34

标签: mule mule-studio mule-component

我需要将对象传递给HTTP连接器(不确定我是否可以使用任何其他连接器)。下一步是将对象转换为CXML并对另一个API进行出站端点调用,获取响应并将其转换为另一个java对象。我对Mule很新,需要一些输入。任何指针都会非常有用。

有人可以给我一些好处,我们有很好的链接来实现骡子实施例(除了Mule in Action)

编辑:来自OP评论的代码

<flow name="object_serialization.mflowFlow1" doc:name="object_serialization.mflowFlow1">
  <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" doc:name="HTTP"/>
  <component class="SerializeObject" doc:name="Java"/>
  <serializable-to-byte-array-transformer doc:name="Serializable to Byte Array"/>
  <http:outbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" method="POST" doc:name="HTTP"/>
</flow>

1 个答案:

答案 0 :(得分:0)

你可以用Mule实现你的目标:

  • 在客户端:
    • 使用serializable-to-byte-array-transformer
    • 序列化Java对象
    • HTTP使用http:outbound-endpoint
    • 发布它
  • 在服务器端:
    • 使用http:inbound-endpoint
    • 接收HTTP POST
    • 使用byte-array-to-serializable-transformer
    • 反序列化Java对象

这假设Java对象实现java.io.Serializable,因为您声明要使用Java序列化,所以应该是这种情况。这也假设客户端和服务器Mule的类路径上都有必要的Java类。