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