Hi Suhan,

Can you check the same flow with having the SOAP Message in following order?

<soapenv:Envelope
   <soapenv:Header>
  </soapenv:Header>
  <soapenv:Body>
  </soapenv:Body>
</soapenv:Envelope>





*Dilan U. Ariyaratne*
Software Engineer
WSO2 Inc. <http://wso2.com/>
Mobile: +94775149066
lean . enterprise . middleware

On Tue, Mar 10, 2015 at 10:09 AM, Suhan Dharmasuriya <[email protected]>
wrote:

> Hi,
>
> I'm following the documentation [1] with WSO2 ESB 4.8.0.
> I have enabled the wire logs and response attached herewith [2].
>
> My XSLT files are as follows.
> I have uploaded them to /_system/config registry (conf:/).
>
> *xslt1.xslt*
>
> <xsl:stylesheet version="1.0" xmlns:xsl="
> http://www.w3.org/1999/XSL/Transform";>
>     <xsl:template match="//people/person" name="FILL_PPL">
>         <client>
>             <firstname>
>                 <xsl:value-of select="firstname">
>             </xsl:value-of></firstname>
>             <lastname>
>                 <xsl:value-of select="lastname">
>             </xsl:value-of></lastname>
>             <age>
>                 <xsl:value-of select="age">
>             </xsl:value-of></age>
>             <country>
>                 <xsl:value-of select="country">
>             </xsl:value-of></country>
>         </client>
>     </xsl:template>
> </xsl:stylesheet>
>
> *xslt2.xslt*
>
> <xsl:stylesheet version="1.0" xmlns:xsl="
> http://www.w3.org/1999/XSL/Transform";>
>     <xsl:include href="xslt1.xslt">
>     <xsl:template match="/">
>         <clients>
>             <xsl:for-each select="//people/person">
>                 <xsl:call-template name="FILL_PPL">
>             </xsl:call-template></xsl:for-each>
>         </clients>
>     </xsl:template>
> </xsl:include></xsl:stylesheet>
>
> *XSLIncludeTestProxy* *proxy* configuration is as follows.
>
> <?xml version="1.0" encoding="UTF-8"?>
> <proxy xmlns="http://ws.apache.org/ns/synapse";
>        name="XSLIncludeTestProxy"
>        transports="https,http"
>        statistics="disable"
>        trace="disable"
>        startOnLoad="true">
>    <target>
>       <inSequence>
>          <xslt key="conf:/xslt2.xslt">
>             <resource location="xslt1.xslt" key="conf:/xslt1.xslt"/>
>          </xslt>
>          <property name="RESPONSE" value="true"/>
>       </inSequence>
>    </target>
>    <description/>
> </proxy>
>
> *SOAP request* sending to proxy service is as follows.
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/
> ">
>     <soapenv:Header>
>     <soapenv:Body>
>         <people>
>             <person>
>                 <firstname>Isuru</firstname>
>                 <lastname>Udana</lastname>
>                 <gender>Male</gender>
>                 <age>26</age>
>                 <country>SriLanka</country>
>             </person>
>             <person>
>                 <firstname>Ishan</firstname>
>                 <lastname>Jayawardena</lastname>
>                 <gender>Male</gender>
>                 <age>26</age>
>                 <country>SriLanka</country>
>             </person>
>         </people>
>     </soapenv:Body>
> </soapenv:Header></soapenv:Envelope>
>
> I'm getting the following NullPointerException [2].
> And after some time connection timeout occurs [3].
>
> Am I missing any required configurations?
>
> [1]
> https://docs.wso2.com/display/ESB481/XSLT+Mediator#XSLTMediator-Example3-AddingXSLTimportsasresources
> [2]
> [2015-03-10 10:00:41,452] DEBUG - wire >> "POST
> /services/XSLIncludeTestProxy.XSLIncludeTestProxyHttpSoap11Endpoint
> HTTP/1.1[\r][\n]"
> [2015-03-10 10:00:41,453] DEBUG - wire >> "Accept-Encoding:
> gzip,deflate[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "Content-Type:
> text/xml;charset=UTF-8[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "SOAPAction:
> "urn:mediate"[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "Content-Length: 720[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "Host:
> Suhans-MacBook-Pro.local:8280[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "Connection: Keep-Alive[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "User-Agent:
> Apache-HttpClient/4.1.1 (java 1.5)[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "[\r][\n]"
> [2015-03-10 10:00:41,454] DEBUG - wire >> "<soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";> [\n]"
> [2015-03-10 10:00:41,455] DEBUG - wire >> "    <soapenv:Header> [\n]"
> [2015-03-10 10:00:41,455] DEBUG - wire >> "    <soapenv:Body> [\n]"
> [2015-03-10 10:00:41,455] DEBUG - wire >> "        <people> [\n]"
> [2015-03-10 10:00:41,455] DEBUG - wire >> "            <person> [\n]"
> [2015-03-10 10:00:41,455] DEBUG - wire >> "
>  <firstname>Isuru</firstname> [\n]"
> [2015-03-10 10:00:41,456] DEBUG - wire >> "
>  <lastname>Udana</lastname> [\n]"
> [2015-03-10 10:00:41,456] DEBUG - wire >> "
>  <gender>Male</gender> [\n]"
> [2015-03-10 10:00:41,456] DEBUG - wire >> "                <age>26</age>
> [\n]"
> [2015-03-10 10:00:41,456] DEBUG - wire >> "
>  <country>SriLanka</country> [\n]"
> [2015-03-10 10:00:41,457] DEBUG - wire >> "            </person> [\n]"
> [2015-03-10 10:00:41,457] DEBUG - wire >> "            <person> [\n]"
> [2015-03-10 10:00:41,457] DEBUG - wire >> "
>  <firstname>Ishan</firstname> [\n]"
> [2015-03-10 10:00:41,457] DEBUG - wire >> "
>  <lastname>Jayawardena</lastname> [\n]"
> [2015-03-10 10:00:41,457] DEBUG - wire >> "
>  <gender>Male</gender> [\n]"
> [2015-03-10 10:00:41,457] DEBUG - wire >> "                <age>26</age>
> [\n]"
> [2015-03-10 10:00:41,458] DEBUG - wire >> "
>  <country>SriLanka</country> [\n]"
> [2015-03-10 10:00:41,458] DEBUG - wire >> "            </person> [\n]"
> [2015-03-10 10:00:41,458] DEBUG - wire >> "        </people> [\n]"
> [2015-03-10 10:00:41,459] DEBUG - wire >> "    </soapenv:Body> [\n]"
> [2015-03-10 10:00:41,459] DEBUG - wire >>
> "</soapenv:Header></soapenv:Envelope>"
> [2015-03-10 10:00:41,540] ERROR - XSLTMediator Unable to perform XSLT
> transformation using : Value {name ='null', keyValue ='conf:/xslt2.xslt'}
> against source XPath : s11:Body/child::*[position()=1] |
> s12:Body/child::*[position()=1] reason : null
> java.lang.NullPointerException
> at
> org.apache.synapse.util.xpath.SourceXPathSupport.selectOMNode(SourceXPathSupport.java:87)
> at
> org.apache.synapse.mediators.transform.XSLTMediator.performXSLT(XSLTMediator.java:211)
> at
> org.apache.synapse.mediators.transform.XSLTMediator.mediate(XSLTMediator.java:191)
> at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
> at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
> at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
> at
> org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
> at
> org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:403)
> at
> org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
> at
> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> [2015-03-10 10:00:41,548] ERROR - NativeWorkerPool Uncaught exception
> java.lang.NullPointerException
> at
> org.apache.synapse.transport.passthru.util.PassThroughTransportUtils.determineHttpStatusCode(PassThroughTransportUtils.java:170)
> at
> org.apache.synapse.transport.passthru.util.SourceResponseFactory.create(SourceResponseFactory.java:46)
> at
> org.apache.synapse.transport.passthru.ServerWorker.sendAck(ServerWorker.java:288)
> at
> org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:192)
> at
> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
>
> [3]
> [2015-03-10 10:01:41,644]  WARN - SourceHandler Connection time out after
> request is read: http-incoming-1
>
> Thanks,
> Suhan
>
> --
> Suhan Dharmasuriya
> Software Engineer - Test Automation
>
> *WSO2, Inc. *
>
> lean . enterprise . middleware
> Tel: +94 112 145345
> Mob: +94 779 869138
> Blog: http://suhan-opensource.blogspot.com/
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to