2013-03-28 51 views
0

我配置了一個代理服務來運行一些接受get請求和返回XML驗證結果的XSBRL驗證內容。這裏的代理服務配置:ESB不會返回任何與GET服務失敗的NPE

<proxy xmlns="http://ws.apache.org/ns/synapse" name="XBRLValidationRESTService" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> 
    <target> 
     <inSequence> 
     <log level="full"/> 
     <property name="REST_URL_POSTFIX" value="/example.xbrl/validation/xbrl?media=xml" scope="axis2"/> 
     <property name="HTTP_METHOD" value="GET" scope="axis2"/> 
     <send> 
      <endpoint> 
       <address uri="http://localhost:10000/rest/xbrl" format="pox"/> 
      </endpoint> 
     </send> 
     </inSequence> 
     <outSequence> 
     <log level="full"/> 
     <send/> 
    </outSequence> 
    </target> 
    <description></description> 
</proxy> 

在日誌文件中我可以看到底層服務與期望的響應進行響應,但是客戶端收到任何回報,因爲ESB無法與NPE出於某種原因。

請求從本地主機使用:

curl -k https://localhost:9443/services/XBRLValidationRESTService 

完整的日誌:http://pastebin.com/A5jB9wMF

什麼是該怎麼可能被固定的潛在原因。

謝謝, 弗拉基米爾。

回答

1

您是否使用阻塞傳輸運行ESB?默認情況下,esb使用NIO傳輸,並且端口是8280.您的代理服務URL將是;

http://localhost:8280/services/XBRLValidationRESTService 

而是把日誌滿的狀態,使用描述性的日誌來確定消息的路徑,

+0

你必須是一個魔術師!改爲NIO,並且都非常出色。謝謝,感謝您的回答。但同意日誌可以提供更多信息,而不僅僅是NPE,就是這樣。 –

相關問題