The message you want to send is not a valid SOAP message. You may have at most one child element in the SOAP Body. You should define a wrapper element for your two elements.
Anne On Tue, May 20, 2008 at 9:23 AM, Kurt Kavanaugh <[EMAIL PROTECTED]> wrote: > > > Any thoughts? I am worried about extending a depricated class. Also > essentially wondering why is it depricated? And two is this the right > approach? > > > > When using the wsdl2java utility and generating a skeleton using the > –xmlbeans switch I see the the MessageReceiver generated. This too extends > the depricated class AbstractInOutSyncMessageReceiver. > > > > Again any information is greatly appreciated… > > > > Kurt > > > > P.S. Is there documentation on extending and creating receivers? Do's and > don't's so to speak. > > > > ________________________________ > > From: Kurt Kavanaugh > Sent: Monday, May 19, 2008 4:40 PM > To: axis-user@ws.apache.org > Subject: RE: Multi-Part/ SOAP body return > > > > > > I just implemented the ability using the axiom model to have an OMElement[] > as a return vs OMElement. Using RawXMLINOutMessageReceiver as an example I > simply modefied the findOperation and return type check when looking at the > method returnType. And the invoke now iterates over the array and adds the > children to envelope.body. All works well. > > > > My question is this, > > > > The sources I have which I believe are the shipping version for 1.3 has the > below class decl > > > > public class RawXMLINOutMultiPartMessageReceiver extends > AbstractInOutSyncMessageReceiver > > > > However AbstractInOutSyncMessageReceiver is depricated. Taking the other > path of extending AbstractMessageReceiver means more work. However if that > is the way to go or if I am missing an *obvious* pattern please, knock me on > the head > > > > Thanks in advance > > > > Kurt > > > > ________________________________ > > From: Kurt Kavanaugh > Sent: Monday, May 19, 2008 3:51 PM > To: axis-user@ws.apache.org > Subject: Multi-Part/ SOAP body return > > > > Looking for > > > > <soapenv:body> > > <status error="none"/> > > <payload foo="test" /> > > </soapenv:body> > > > > I am implementing a service with message receiver RawXMLINOutMessageReceiver > which has a single entry point return (ie OMElement ) > > > > Snippet from source > > > > ************* start snippet ************* > > OMElement result = (OMElement) method.invoke(obj, new > Object[]{msgContext.getEnvelope().getBody().getFirstElement()}); > > SOAPFactory fac = getSOAPFactory(msgContext); > > SOAPEnvelope envelope = fac.getDefaultEnvelope(); > > > > if (result != null) { > > envelope.getBody().addChild(result); > > } > > ************ end snippet *************** > > > > I can see the logic, that is it is defined to return a OMElement. > > > > I guess I am looking for > > > > OMElement[] result = (OMElement) method.invoke(obj, new > Object[]{msgContext.getEnvelope().getBody().getFirstElement()}); > > > > if (result != null) { > > envelope.getBody().addChildren(result); // pseudo code > > } > > > > > > I know I could change my return type to be a container, in essence, > > > > <soapenv:body> > > <result> > > <status error="none"/> > > <payload foo="test" /> > > </result> > > </soapenv:body> > > > > But I would rather not. Thanks > > > > > > > > Kurt --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]