Question

I've configured a proxy service to run some XSBRL validation stuff that accepts a get request amd return XML validation results. Here's proxy service configuration:

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

In the log file I can see that the underlying service responds with expected response, however the client receives nothing back because ESB fails with NPE for some reason.

Request used from localhost:

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

Full log: http://pastebin.com/A5jB9wMF

What is the potential reason for that and how that could be fixed.

Thanks, Vladimir.

Was it helpful?

Solution

Do you run ESB with blocking transport? By default esb uses NIO transport and the port is 8280. your proxy service url, will be;

http://localhost:8280/services/XBRLValidationRESTService

Rather putting log full state, use descriptive logs to identify message paths,

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top