0

我已经配置了一个代理服务来运行一些 XSBRL 验证东西,这些东西接受一个 get 请求并返回 XML 验证结果。这是代理服务配置:

<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

造成这种情况的潜在原因是什么以及如何解决。

谢谢,弗拉基米尔。

4

1 回答 1

1

您是否使用阻塞传输运行 ESB?默认情况下 esb 使用 NIO 传输,端口为 8280。您的代理服务 url 将是;

http://localhost:8280/services/XBRLValidationRESTService

而是将日志完整状态,使用描述性日志来识别消息路径,

于 2013-03-28T17:38:38.313 回答