a web service of mine is returing import org.w3c.dom.Element as the type. This is one way to return literal XML with Apache SOAP says IBM (http://www-106.ibm.com/developerworks/webservices/library/ws-soapmap1/ ). The SOAP message looks fine when viewing with SOAPMonitor, but I have yet to be able to write a client that can read the Element. I get statement when trying to dump the Element to the screen. Here is snippet of my client code:

Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress( endPoint );
call.setOperationName( "getNiches" );
call.setReturnClass(org.w3c.dom.Element.class);
call.setReturnType(new javax.xml.namespace.QName("http://xml.apache.org/xml-
soap", "Element"));
call.setEncodingStyle( Constants.NS_URI_XML );
Element xml = (Element) call.invoke(new java.lang.Object[] {});
System.out.println( xml );


IBM states that setting the encoding style to Constants.NS_URI_XML will force the encoding to be of literal XML. Here is my SOAP Message:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
<soapenv:Body>
<ns1:getNichesResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"; xmlns:ns1="http://TLI";>
<ns1:getNichesReturn xsi:type="ns2:Element" xmlns:ns2="http://xml.apache.org/xml-soap";>
<email-list>
<emails><email age="24" first=" meg" sex="F">[EMAIL PROTECTED]</email>
</email-list>
</ns1:getNichesReturn>
</ns1:getNichesResponse>
</soapenv:Body>
</soapenv:Envelope>



Here is the result of my println:


[email-list: null]


Can some get me in the right direction for how to recieve the Element object with a Axis Client ? What am I doing wrong in the above. Any help would be greatly appreciated.


P.S - I tried the WSDL2Java code as well, I still get the null result even though the raw SOAP message clearly shows the XML as the return type.

_________________________________________________________________
Watch high-quality video with fast playback at MSN Video. Free! http://click.atdmt.com/AVE/go/onm00200365ave/direct/01/


Reply via email to