2016-04-27 58 views
1

我試圖以高性能的方式將UDP消息轉換爲HTTP。所以我想過用WSO2 ESB來做這件事。 所以我嘗試了示例教程https://docs.wso2.com/pages/viewpage.action?pageId=26838866 並且示例運行良好。WSO2 ESB:UDP到HTTP轉換

那麼我試着用UDP消息生成工具(packetsender)調用ESB代理。但是,我不能只發送一個字符串值作爲UDP消息,我必須發送完整的肥皂消息與每個UDP消息。即

<?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> 

感謝

回答

2

高清修改您的代理和適應內容類型你的需要:

<parameter name="transport.udp.contentType">text/plain</parameter> 
+0

由於現在運轉。我想知道這個屬性的適用值(transport.udp.contentType)是在wso2文檔中記錄的。但我找不到它。 – lsc

+0

查看repository/conf/axis2/axis2.xml並搜索聲明的messageBuilders。無法幫助您獲取文檔... –