Harm Verhagen wrote: > Allmost.. > > after fixing the typo: (soapEnv -> soapenv). > The transformation seems OK, but now I get double > <Body><Body></Body></Body> quotes. Have you tried removing the Body in the source attribute of the XSLT mediator configuration? That might fix this problem...
Thanks, Ruwan > > 2008-10-24 17:06:18,772 [127.0.0.1-vloeki_v01] [HttpServerWorker-9] > INFO LogMediator To: /soap/Loyalty_1_0,WSAction: > http://www.XXX.com/loyalty_3_3/Redeem,SOAPAction: > http://www.XXX.com/loyalty_3_3/Redeem,MessageID: > urn:uuid:B9D03BD86AAC65A7F91224864379180,Direction: request,Envelope: > <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:ser="http://service.YYY.com/"><soapenv:Body> > <soapenv:Body> > <Login xmlns="http://www.XXX.com/authentication_3_1/"> > <UserName>571701</UserName> > <Password>571701</Password> > </Login> > <Redeem xmlns:loy="http://www.XXX.com/loyalty_3_2/"> > <TransactionHeader> > <SequenceNumber>0</SequenceNumber> > <TransactionTime /> > <OperatorId /> > <ClientReference /> > </TransactionHeader> > <test /> > <CardId>123456</CardId> > <Points>5</Points> > <SchemeId>0</SchemeId> > <InputValue>0</InputValue> > </Redeem> > <Logout xmlns="http://www.XXX.com/authentication_3_1/" /> > </soapenv:Body> > > </soapenv:Body></soapenv:Envelope> > > > > > 2008/10/24 Ruwan Linton <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> > > Harm the issue is with the multiple elements in the output... Are > you sure you want to put multiple elements into the SOAP body? > > If so use the following attached XSLT with the following source > attribute in the XSLT mediator.... > > <xslt key="Loyalty.xslt" source="/soapenv:Envelope/soapenv:Body" > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"/> > > Thanks, > Ruwan > > Harm Verhagen wrote: > > Find attached the xslt that gives me the problem. > > *input:* > <soapenv:Envelope > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:ser="http://service.YYY.com/" > > > <soapenv:Header/> > <soapenv:Body> > <ser:redeem > > <token>00000000-00</token> > <cardId>123456</cardId> > <points>5</points> > <schemeId>0</schemeId> > <amount>0</amount> > </ser:redeem> > > </soapenv:Body> > </soapenv:Envelope> > > *output *(wso2 logging) > <soapenv:Envelope > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:ser="http://service.YYY.com/"><soapenv:Body> > <Login xmlns="http://www.XXX.com/authentication_3_1/"> > <UserName>571701</UserName> > <Password>571701</Password> > </Login> > > </soapenv:Body></soapenv:Envelope> > > *expected output* > soap body with *3* children > <Login> ... </..> > <Redeem>....</..> > <Logout> ... </...> > > It does do this with xslproc. I wonder how to do this whith wso2. > I played aroudn with <xslt source=> in synapse.xml but I then > realized the input doesn't have a problem. > > Anyone an idea? > > Regards, > Harm > > On Thu, Oct 23, 2008 at 6:09 PM, Ruwan Linton <[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>>> wrote: > > Hi Harm, > > Please see my comments inline; > > Harm Verhagen wrote: > > Hi, > > > > I'm trying to use the xslt mediator to modify a soap > request from 1 > > interface to and ohter interface. > > > > I have a single soap request, and transform it in a soap > body with 3 > > requests. (login, a method, logout). > > I debugged the xslt file with xsltproc, this seems to > work fine. > > > > I see now the following 3 problems: > > > > 1) whenver I put the xslt in wso2esb, I see that the > resulting > output > > (using log mediator) is _not_ complete. > > Only the first invocation is on. Only the login. How to > tickle the > > xslt mediator so it puts everything in ? > Can you please attach the XSLT and the configuration that > you are > using > so that I can have a look at it.... I really cannot say > anything about > this without looking at the XSLT. :-( > > > > 2) the namespace ser: is not removed from the message > (the xslt > file > > _does_ have exclude-result-prefixes="fn ser loy">. > xsltproc > removes > > it, wso2esb does not. > This should work I guess... let me see your XSLT and get > back to you > once again. > > > > 3). The SOAPAction header is not set correctly, how to do > this ? > Can > > this be done from xslt ? > This can be done using the header mediator as follows; > > <header name="Action" value="$soap_action"/> here the > $soap_action has > to be replaced with the SOAP action that you need to set. > > Thanks, > Ruwan > > > > *output* (from log mediator) > > <soapenv:Envelope > > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > > xmlns:ser="http://service.XXX.com/"><soapenv:Body> > > > > <Login xmlns="http://www.XXXX.com/XXXX_3_1/"> > > <UserName>571701</UserName> > > <Password>571701</Password> > > </Login> > > > > </soapenv:Body></soapenv:Envelope> > > > > *expected output* (from xsltproc) > > <soapenv:Envelope > > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> > > <soapenv:Header/> > > > > <Login xmlns="http://www.XXX.com/XXX_3_1/"> > > <UserName>571701</UserName> > > <Password>571701</Password> > > </Login> > > <redeem xmlns:loy="http://www.XXX.com/XX_3_2/" > > > <TransactionHeader> > > <SequenceNumber>0</SequenceNumber> > > <TransactionTime/> > > <OperatorId/> > > <ClientReference/> > > </TransactionHeader> > > <CardId>123456</CardId> > > <Points>5</Points> > > <SchemeId>0</SchemeId> > > <InputValue>0</InputValue> > > </redeem> > > <Logout xmlns:auth="http://www.XXX.com/XXX_3_1/" > > > > > </soapenv:Body> > > </soapenv:Envelope> > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > Esb-java-user mailing list > > [email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>> > > > > http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-user > > > > > _______________________________________________ > Esb-java-user mailing list > [email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>> > > http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-user > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Esb-java-user mailing list > [email protected] <mailto:[email protected]> > http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-user > > > > > _______________________________________________ > Esb-java-user mailing list > [email protected] <mailto:[email protected]> > http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-user > > > ------------------------------------------------------------------------ > > _______________________________________________ > Esb-java-user mailing list > [email protected] > http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-user > _______________________________________________ Esb-java-user mailing list [email protected] http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-user
