Hi all, I have a proxy which needs to do XSL transformation of an output message coming from the service. I have attached the sequence file and the XSL file (at synaptic-configs/local-entries).
Appreciate if you can give a hint on where I might have gone wrong. Here are the log entries: [2012-08-04 11:35:44,966] INFO - LogMediator To: /services/MergedBasicEmployeesProxy.MergedBasicEmployeesProxyHttpSoap12Endpoint, WSAction: urn:getEmployeeById, SOAPAction: urn:getEmployeeById, MessageID: urn:uuid:c80fb5a4-41e4-4de4-924d-a18af37b5056, Direction: request, sequence = inSequence - request for EmpMergeProxy, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv=" http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><p:getEmployeeById xmlns:p="http://service.proxy.gunith "><!--0 to 1 occurrence--><xs:args0 xmlns:xs="http://service.proxy.gunith ">1</xs:args0></p:getEmployeeById></soapenv:Body></soapenv:Envelope> [2012-08-04 11:35:44,970] INFO - LogMediator To: /services/MergedBasicEmployeesProxy.MergedBasicEmployeesProxyHttpSoap12Endpoint, WSAction: urn:getEmployeeById, SOAPAction: urn:getEmployeeById, MessageID: urn:uuid:c80fb5a4-41e4-4de4-924d-a18af37b5056, Direction: request, sequence = inSequence - request for EmpMergeProxy, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv=" http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><sam:getEmployeeById xmlns:sam="http://service.hrapp.gunith "> <sam:args0>1</sam:args0> </sam:getEmployeeById></soapenv:Body></soapenv:Envelope> [2012-08-04 11:35:45,504] INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:ea979246-adbc-494d-bd55-e3ed25171984, Direction: response, sequence = Final Transform using XSLT - begin, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv=" http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><ns:getEmployeeByIdResponse xmlns:ns="http://service.hrapp.gunith "><ns:return xmlns:ax21="http://domain.hrapp.gunith/xsd " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax21:Employee"><ax21:dob>1984-03-01</ax21:dob><ax21:firstName>Gunith</ax21:firstName><ax21:id>1</ax21:id><ax21:lastName>Dev</ax21:lastName><ax21:middleName>E</ax21:middleName></ns:return></ns:getEmployeeByIdResponse></soapenv:Body></soapenv:Envelope> [2012-08-04 11:35:45,505] INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:2eb104c0-53c9-4155-8fef-99e7600b7559, Direction: response, sequence = Final Transform using XSLT - begin, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv=" http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><ns:getEmployeeByIdResponse xmlns:ns="http://service.hrapp.gunith "><ns:return xmlns:ax21="http://domain.hrapp.gunith/xsd " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax21:Employee"><ax21:dob>1984-03-01</ax21:dob><ax21:firstName>Gunith</ax21:firstName><ax21:id>1</ax21:id><ax21:lastName>Dev</ax21:lastName><ax21:middleName>E</ax21:middleName></ns:return></ns:getEmployeeByIdResponse></soapenv:Body></soapenv:Envelope> [2012-08-04 11:35:45,528] ERROR - XSLTMediator Unable to perform XSLT transformation using : Value {name ='null', keyValue ='getEmployeeByIdResponseXlt'} against source XPath : s11:Body/child::*[position()=1] | s12:Body/child::*[position()=1] org.apache.axiom.om.OMException: com.ctc.wstx.exc.WstxUnexpectedCharException:* Unexpected character '1' (code 49) in prolog; expected '<' at [row,col {unknown-source}]: [1,1]* at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:296) at org.apache.axiom.om.impl.llom.OMDocumentImpl.getOMDocumentElement(OMDocumentImpl.java:109) at org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:570) at org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:566) at org.apache.synapse.util.jaxp.StreamResultBuilder.getNode(StreamResultBuilder.java:87) at org.apache.synapse.mediators.transform.XSLTMediator.performXSLT(XSLTMediator.java:298) at org.apache.synapse.mediators.transform.XSLTMediator.mediate(XSLTMediator.java:191) at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:229) at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:370) at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:160) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181) at org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:275) at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:173) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679) THANK YOU! Gunith Devasurendra - ගුණිත් දේවසුරේන්ද්ර gunith.com *|* linkedin <http://linkedin.com/in/gunith> *|* facebook<http://facebook.com/gunith> *|* google+ <http://gplus.to/gunith> *|* twitter <http://twitter.com/gunith> *|* flickr <http://flickr.com/people/gunith> *|* foss.lk *Everything eventually becomes a past...*
<?xml version="1.0" encoding="UTF-8"?> <sequence xmlns="http://ws.apache.org/ns/synapse" name="EmpMergeOutSeq1" trace="enable" statistics="enable"> <log level="full"> <property name="sequence" value="Final Transform using XSLT - begin"/> </log> <xslt key="getEmployeeByIdResponseXlt"/> <send/> </sequence>
<?xml version="1.0" encoding="UTF-8"?> <localEntry xmlns="http://ws.apache.org/ns/synapse" key="getEmployeeByIdResponseXlt"> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ax21="http://service.hrapp.gunith/xsd" xmlns:ns="http://service.hrapp.gunith" xmlns:fn="http://www.w3.org/2005/02/xpath-functions" version="2.0" exclude-result-prefixes="ns fn"> <xsl:output method="xml" omit-xml-declaration="yes" indent="yes"/> <xsl:template match="/"> <xsl:apply-templates select="//ns:getEmployeeByIdResponse"/> </xsl:template> <xsl:template xmlns:ns="http://samples.esb.wso2.org" match="ns:getEmployeeByIdResponse"> <ns1:getEmployeeByIdResponse xmlns:ns1="http://service.proxy.gunith"> <ns1:return xmlns:ax22="http://domain.proxy.gunith/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax22:Employee"> <ax22:dob> <xsl:value-of select="ns:return/ax21:dob"/> </ax22:dob> <ax22:firstName> <xsl:value-of select="ns:return/ax21:firstName"/> </ax22:firstName> <ax22:id> <xsl:value-of select="ns:return/ax21:id"/> </ax22:id> <ax22:lastName> <xsl:value-of select="ns:return/ax21:lastName"/> </ax22:lastName> <ax22:middleName> <xsl:value-of select="ns:return/ax21:middleName"/> </ax22:middleName> </ns1:return> </ns1:getEmployeeByIdResponse> </xsl:template> </xsl:stylesheet> </localEntry>
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
