WSO2 ESB:UDP 到 HTTP 转换
WSO2 ESB : UDP to HTTP transform
我正在尝试以高性能方式将 UDP 消息转换为 HTTP。所以我想用WSO2 ESB来做。
所以我尝试了示例教程 https://docs.wso2.com/pages/viewpage.action?pageId=26838866
样品效果很好。
于是我尝试使用UDP 消息生成工具(packetsender)调用ESB 代理。但是我不能只发送一个字符串值作为 UDP 消息,我必须在每个 UDP 消息中发送完整的 soap 消息。即
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<m0:placeOrder xmlns:m0="http://services.samples">
<m0:order>
<m0:symbol>IBM</m0:symbol>
</m0:order>
</m0:placeOrder>
</soapenv:Body>
</soapenv:Envelope>
那么是否可以向所有端点发送只有字符串的 UDP 消息(而不发送整个 SOAP 信息)?可能在那里我们可能需要更改 ESB 的以下代理服务,
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="UDPProxy"
transports="udp"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log level="full"/>
<property name="OUT_ONLY" value="true"/>
</inSequence>
<endpoint>
<address uri="http://127.0.0.1:9764"/>
</endpoint>
</target>
<parameter name="transport.udp.port">9998</parameter>
<parameter name="transport.udp.contentType">text/xml</parameter>
<description/>
</proxy>
谢谢
修改您的代理定义并根据您的需要调整内容类型:
<parameter name="transport.udp.contentType">text/plain</parameter>
我正在尝试以高性能方式将 UDP 消息转换为 HTTP。所以我想用WSO2 ESB来做。 所以我尝试了示例教程 https://docs.wso2.com/pages/viewpage.action?pageId=26838866 样品效果很好。
于是我尝试使用UDP 消息生成工具(packetsender)调用ESB 代理。但是我不能只发送一个字符串值作为 UDP 消息,我必须在每个 UDP 消息中发送完整的 soap 消息。即
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<m0:placeOrder xmlns:m0="http://services.samples">
<m0:order>
<m0:symbol>IBM</m0:symbol>
</m0:order>
</m0:placeOrder>
</soapenv:Body>
</soapenv:Envelope>
那么是否可以向所有端点发送只有字符串的 UDP 消息(而不发送整个 SOAP 信息)?可能在那里我们可能需要更改 ESB 的以下代理服务,
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="UDPProxy"
transports="udp"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log level="full"/>
<property name="OUT_ONLY" value="true"/>
</inSequence>
<endpoint>
<address uri="http://127.0.0.1:9764"/>
</endpoint>
</target>
<parameter name="transport.udp.port">9998</parameter>
<parameter name="transport.udp.contentType">text/xml</parameter>
<description/>
</proxy>
谢谢
修改您的代理定义并根据您的需要调整内容类型:
<parameter name="transport.udp.contentType">text/plain</parameter>