Maybe you could try to use:

         RPCElement[] input = new RPCElement[1];
        RPCParam arg1 = new RPCParam("XXXnamespace", "XXXparameter name", (Object)parameter value));
        input[0] = new RPCElement("XXXnamespace", "XXXmethod name", new Object[]{arg1});

        Vector          elems = (Vector) call.invoke( input );
        SOAPBodyElement elem  = null ;
        Element         e     = null ;
        try{
        elem = (SOAPBodyElement) elems.get(0);
        e    = elem.getAsDOM();

        str = XMLUtils.ElementToString(e);

        and try to parse the string later.

Hope it helps!

Anna

At 02:52 PM 6/6/2002 +0100, you wrote:
Still having a problem... Getting quite urgent now!

>
> I suppose you mean deserialization and not serialization. If you have a
> service in Axis:

I have sent the SOAP request and the response is throwing an error:

     [java] - Exception:
     [java] org.xml.sax.SAXException: SimpleDeser cannot handle structured
data!
     [java]     at
org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeseriali
zer.java:155)
     [java]     at
org.apache.axis.encoding.DeserializationContextImpl.startElement(Deserializa
tionContextImpl.java:831)

     [java]     at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:199)
     [java]     at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:
589)
     [java]     at
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:224)
     [java]     at
org.apache.axis.message.RPCElement.getParams(RPCElement.java:248)
     [java]     at org.apache.axis.client.Call.invoke(Call.java:1701)
     [java]     at org.apache.axis.client.Call.invoke(Call.java:1608)
     [java]     at org.apache.axis.client.Call.invoke(Call.java:1634)
        [java] FAULT:
  [java]        at uk.co.tm.rtp.cfx_axis.processRequest(cfx_axis.java:57)
      [java]    at uk.co.tm.rtp.cfx_axis.main(cfx_axis.java:101)
    [java] org.xml.sax.SAXException: SimpleDeser cannot handle structured
data!

See message below...

Basically I want to retrieve the Body of the SOAP Packet, but as there is no
deserializer for the SOAP response, it's throwing an error.

Any way to get round it?

Paul

> > -----Original Message-----
> > From: Paul Johnston [mailto:[EMAIL PROTECTED]]
> > Sent: Monday, May 27, 2002 4:20 PM
> > To: [EMAIL PROTECTED]
> > Subject: Retrieving data from a SOAP packet
> >
> >
> > I am implementing a SOAP interface to a client's software and
> > am having a
> > problem serializing the data returned.  The data is returned
> > like this:
> >
> > <?xml version="1.0"?>
> >     <SOAP-ENV:Envelope
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
> > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> >     <SOAP-ENV:Body>
> >         <CreateSession2Response>
> >
> > <sessionReference>http://test.blah.co.uk:85/digest/31383335333
> > 535373</sessio
> > nReference>
> >             <launch>
> >                 <viewer>
> >                     <version>2.0</version>
> >
> > <URL>http://test.blah.co.uk:85/digest/313833353335353734373335
> 333535373</URL
> > >
> >
> > <versionURL>http://www.blah.com/client-version</versionURL>
> >                 </viewer>
> >             </launch>
> >         </CreateSession2Response>
> >     </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > How can I get that into Java?  Currently I'm a tad confused!
> > I can get a
> > simple string into Java, but above and beyond that...
> >
> > Paul
> >
> > PS the packet will always be the same form
> >



Reply via email to