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 Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev