Mancinelli Elodie wrote:

Sorry, I want to precise my request. When I observe with TCPMon the soap message, the differents messages of WSRM's protocole are created (CreateSequence, CreateSequenceResponse, Message, Acknowldgement and TerminateSequence). These messages are correct. The problem is on the server after messages.

Thanks,

Regards,
Elodie


Mancinelli Elodie wrote:

Hi all,

I try to create an OneWay method which supports WSRM and an attachment.
My service is really simple, it's only a "println".
The method runs successfully when there is only the WSRM implementation, but when I add the attachement part, I have an server error:

org.apache.sandesha2.SandeshaException: Data binding error; nested exception is: java.lang.RuntimeException: Data binding error; nested exception is: org.apache.axis2.AxisFault: Data binding error; nested exception is:
       java.lang.RuntimeException: Data binding error
at org.apache.sandesha2.workers.InOrderInvoker.run(InOrderInvoker.java:199) Caused by: org.apache.axis2.AxisFault: Data binding error; nested exception is:
       java.lang.RuntimeException: Data binding error
       at org.apache.axis2.AxisFault.makeFault(AxisFault.java:318)
at fr.gouv.finances.dgme.presto.PrestoSvcMessageReceiverInOnly.invokeBusinessLogic(PrestoSvcMessageReceiverInOnly.java:50) at org.apache.axis2.receivers.AbstractInMessageReceiver.receive(AbstractInMessageReceiver.java:34) at org.apache.axis2.engine.AxisEngine.resumeReceive(AxisEngine.java:497)
       at org.apache.axis2.engine.AxisEngine.resume(AxisEngine.java:543)
at org.apache.sandesha2.workers.InOrderInvoker.run(InOrderInvoker.java:189)
Caused by: java.lang.RuntimeException: Data binding error
at fr.gouv.finances.dgme.presto.PrestoSvcMessageReceiverInOnly.fromOM(PrestoSvcMessageReceiverInOnly.java:174) at fr.gouv.finances.dgme.presto.PrestoSvcMessageReceiverInOnly.invokeBusinessLogic(PrestoSvcMessageReceiverInOnly.java:46)
       ... 4 more
Caused by: org.apache.axiom.om.OMException: java.lang.NullPointerException at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:254) at org.apache.axiom.om.impl.llom.OMStAXWrapper.getTextCharacters(OMStAXWrapper.java:365) at org.apache.xmlbeans.impl.store.Locale.loadXMLStreamReader(Locale.java:1154) at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:843) at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:826) at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:231) at fr.gouv.finances.dgme.presto.SubmitOneWayDocument$Factory.parse(SubmitOneWayDocument.java:128) at fr.gouv.finances.dgme.presto.PrestoSvcMessageReceiverInOnly.fromOM(PrestoSvcMessageReceiverInOnly.java:145)
       ... 5 more
Caused by: java.lang.NullPointerException
at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:737) at org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(InternalInputBuffer.java:777) at org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffer.java:710)
       at org.apache.coyote.Request.doRead(Request.java:423)
at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:283) at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:371) at org.apache.catalina.connector.InputBuffer.readByte(InputBuffer.java:292) at org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:104)
       at java.io.FilterInputStream.read(FilterInputStream.java:66)
       at java.io.PushbackInputStream.read(PushbackInputStream.java:120)
at org.apache.axiom.attachments.MIMEBodyPartInputStream.read(MIMEBodyPartInputStream.java:49) at javax.mail.internet.InternetHeaders.load(InternetHeaders.java:106) at javax.mail.internet.InternetHeaders.<init>(InternetHeaders.java:92)
       at javax.mail.internet.MimeBodyPart.<init>(MimeBodyPart.java:59)
at org.apache.axiom.attachments.PartOnMemory.<init>(PartOnMemory.java:31) at org.apache.axiom.attachments.Attachments.getPart(Attachments.java:451) at org.apache.axiom.attachments.Attachments.getNextPart(Attachments.java:359) at org.apache.axiom.attachments.Attachments.getPart(Attachments.java:324) at org.apache.axiom.attachments.Attachments.getDataHandler(Attachments.java:274) at org.apache.axiom.om.impl.mtom.MTOMStAXSOAPModelBuilder.getDataHandler(MTOMStAXSOAPModelBuilder.java:151) at org.apache.axiom.om.impl.llom.OMTextImpl.getDataHandler(OMTextImpl.java:341) at org.apache.axiom.om.impl.llom.OMTextImpl.getInputStream(OMTextImpl.java:368) at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:238)

My client is:

public static void testSubmitOneWayWSRM() throws Exception {

ConfigurationContext configContext = ConfigurationContextFactory.createConfigurationContextFromFileSystem(CLIENT_REPO_PATH,axis2_xml);
        ServiceClient sender = new ServiceClient (configContext,null);


        OMFactory fac = OMAbstractFactory.getOMFactory();
        OMNamespace omNs = fac.createOMNamespace(namespace, "m");
        OMElement payload = fac.createOMElement("submitOneWay", omNs);
        OMElement bodymess = fac.createOMElement("bodymessage", omNs);
                // Add Text
        String bodymessvalue=createSoapMessageString(fileXMLName);
        payload.addChild(fac.createOMText(bodymess, bodymessvalue));

        // Add text file
        OMElement attach=createAttachment(fac,omNs);
        attach = fac.createOMElement("attachment", omNs);
        File fileTxt = new File(fileName);
        FileDataSource dataSource = new FileDataSource(fileTxt);
        DataHandler expectedDH = new DataHandler(dataSource);
        OMText textData = fac.createOMText(expectedDH, true);
System.out.println("Client:contentID" + textData.getContentID());
        attach.addChild(textData);
        payload.addChild(attach);

        System.out.println("callAXIOM, doc sent : "+payload);
        Options options = new Options();
        options.setTo(targetEPR);
        options.setAction("submitOneWay");
        options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
        options.setUseSeparateListener(false);
options.setProperty(Constants.Configuration.ENABLE_MTOM, Constants.VALUE_TRUE); options.setProperty(MessageContextConstants.TRANSPORT_URL,targetEPRTcpmon);
        sender.setOptions(options);

options.setProperty(SandeshaClientConstants.LAST_MESSAGE, "true");
        sender.fireAndForget(payload);
        Thread.sleep(10000);
        System.out.println("NO RETURN FOR WEBSERVICE");

   }

I join also the configuration file : client_axis2.xml

Can someone have an idea?

Thanks for your help.

Regards
Elodie


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to