You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Florian Georg <Fl...@uni-konstanz.de> on 2008/02/10 02:15:38 UTC
[AXIS2] ADB Parse error when using MTOM in response
Hi,
I'm suddenly getting problems with the unmarshalling of by messages,
after using MTOM to transfer binary data.
My Client looks like this:
[...]
clientStub._getServiceClient().getOptions().setProperty(Constants.Configuration.ENABLE_MTOM,
Constants.VALUE_TRUE);
clientStub._getServiceClient().getOptions().setTimeOutInMilliSeconds(100000);
clientStub._getServiceClient().getOptions().setManageSession(true);
[...]
RetrieveDataRequest retrieveRequest = new RetrieveDataRequest();
retrieveRequest.setJobID(response.getJobID());
retrieveRequest.setOutPort(0);
RetrieveDataResponse retrieveResponse =
clientStub.retrieveData(retrieveRequest); // <--- ERROR
Everything looks fine, except on the client side I get an error like this:
org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException:
Unexpected subelement Include
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
at
org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(ExecuteWorkflowStub.java:1318)
at
org.knime.soda.services.client.ExecuteWorkflowStub.retrieveData(ExecuteWorkflowStub.java:886)
at
org.knime.soda.server.test.services.ExecuteWorkflowAsyncTest.testProgressPolling(ExecuteWorkflowAsyncTest.java:78)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at
org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:69)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:232)
at junit.framework.TestSuite.run(TestSuite.java:227)
at junit.framework.TestSuite.runTest(TestSuite.java:232)
at junit.framework.TestSuite.run(TestSuite.java:227)
at
org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:76)
at
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: java.lang.Exception:
org.apache.axis2.databinding.ADBException: Unexpected subelement Include
at
org.knime.soda.services.TableContainer$Factory.parse(TableContainer.java:529)
at
org.knime.soda.services.RetrieveDataResponse$Factory.parse(RetrieveDataResponse.java:447)
at
org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(ExecuteWorkflowStub.java:1295)
... 24 more
Caused by: org.apache.axis2.databinding.ADBException: Unexpected
subelement Include
at
org.knime.soda.services.TableContainer$Factory.parse(TableContainer.java:525)
... 26 more
I suppose that the "Include" element mentioned is the xop:include that
was sent with the response. The response looks like this:
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:wsa="http://www.w3.org/2005/08/addressing">
<soapenv:Header>
<wsa:ReplyTo>
<wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address>
<wsa:ReferenceParameters>
<axis2:ServiceGroupId
xmlns:axis2="http://ws.apache.org/namespaces/axis2">urn:uuid:6BD67F48DCEE91861B1202692300817</axis2:ServiceGroupId>
</wsa:ReferenceParameters>
</wsa:ReplyTo>
<wsa:MessageID>urn:uuid:6BD67F48DCEE91861B1202692306472</wsa:MessageID>
<wsa:Action>urn:retrieveDataResponse</wsa:Action>
<wsa:RelatesTo>urn:uuid:6BD67F48DCEE91861B1202692306419</wsa:RelatesTo>
</soapenv:Header>
<soapenv:Body>
<ns1:retrieveDataResponse
xmlns:ns1="http://knime.org/soda/services">
<outData binary="true">
<binaryData>
<xop:Include
href="cid:1.urn:uuid:6BD67F48DCEE91861B1202692306898@apache.org"
xmlns:xop="http://www.w3.org/2004/08/xop/include" />
</binaryData>
</outData>
<hasMoreData>false</hasMoreData>
</ns1:retrieveDataResponse>
</soapenv:Body>
</soapenv:Envelope>--MIMEBoundaryurn_uuid_6BD67F48DCEE91861B1202692306896Content-Type:
application/octet-stream
[...]
One more strange thing: On the console I get the following:
Exception in thread "HttpConnection-8080-6"
java.lang.IllegalStateException: Response already committed
at
org.apache.axis2.transport.http.server.AxisHttpResponseImpl.assertNotCommitted(AxisHttpResponseImpl.java:75)
at
org.apache.axis2.transport.http.server.AxisHttpResponseImpl.sendError(AxisHttpResponseImpl.java:110)
at
org.apache.axis2.transport.http.server.AxisHttpService.doService(AxisHttpService.java:291)
at
org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(AxisHttpService.java:166)
at
org.apache.axis2.transport.http.server.HttpServiceProcessor.run(HttpServiceProcessor.java:85)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
Not sure if this is the cause, or a subsequent error....
Thanks in advance for any hints on that.
kind regards,
Florian
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org
Re: [AXIS2] ADB Parse error when using MTOM in response
Posted by Thilina Gunarathne <cs...@gmail.com>.
Does your WSDL declares the BinaryData(MTOM) element using base64Binary data
type..
thanks,
Thilina
On Feb 15, 2008 7:55 AM, Florian Georg <fl...@uni-konstanz.de>
wrote:
> I´m using release 1.3
>
> Any ideas? should I switch to a more recent build?
>
> kind regards,
> Florian
>
>
> On Thu, 2008-02-14 at 10:47 +0530, Amila Suriarachchi wrote:
> > What is the Axis2 version you use?
> >
> > Amila.
> >
> > On Feb 10, 2008 6:45 AM, Florian Georg <Fl...@uni-konstanz.de>
> > wrote:
> > Hi,
> >
> >
> > I'm suddenly getting problems with the unmarshalling of by
> > messages,
> > after using MTOM to transfer binary data.
> >
> > My Client looks like this:
> > [...]
> > clientStub._getServiceClient().getOptions().setProperty(
> Constants.Configuration.ENABLE_MTOM,
> > Constants.VALUE_TRUE);
> >
> >
> clientStub._getServiceClient().getOptions().setTimeOutInMilliSeconds(100000);
> >
> clientStub._getServiceClient().getOptions().setManageSession(true);
> > [...]
> > RetrieveDataRequest retrieveRequest = new
> > RetrieveDataRequest();
> > retrieveRequest.setJobID(response.getJobID());
> > retrieveRequest.setOutPort(0);
> >
> > RetrieveDataResponse retrieveResponse =
> > clientStub.retrieveData(retrieveRequest); // <--- ERROR
> >
> >
> >
> > Everything looks fine, except on the client side I get an
> > error like this:
> >
> > org.apache.axis2.AxisFault:
> > org.apache.axis2.databinding.ADBException:
> > Unexpected subelement Include
> > at
> > org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
> > at
> > org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(
> ExecuteWorkflowStub.java:1318)
> > at
> > org.knime.soda.services.client.ExecuteWorkflowStub.retrieveData(
> ExecuteWorkflowStub.java:886)
> > at
> >
> org.knime.soda.server.test.services.ExecuteWorkflowAsyncTest.testProgressPolling
> (ExecuteWorkflowAsyncTest.java:78)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown
> > Source)
> > at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
> > Source)
> > at java.lang.reflect.Method.invoke(Unknown Source)
> > at junit.framework.TestCase.runTest(TestCase.java:168)
> > at junit.framework.TestCase.runBare(TestCase.java:134)
> > at
> > org.springframework.test.ConditionalTestCase.runBare(
> ConditionalTestCase.java:69)
> > at junit.framework.TestResult
> > $1.protect(TestResult.java:110)
> > at
> > junit.framework.TestResult.runProtected(TestResult.java:128)
> > at junit.framework.TestResult.run(TestResult.java:113)
> > at junit.framework.TestCase.run(TestCase.java:124)
> > at
> > junit.framework.TestSuite.runTest(TestSuite.java:232)
> > at junit.framework.TestSuite.run(TestSuite.java:227)
> > at
> > junit.framework.TestSuite.runTest(TestSuite.java:232)
> > at junit.framework.TestSuite.run(TestSuite.java:227)
> > at
> > org.junit.internal.runners.OldTestClassRunner.run(
> OldTestClassRunner.java:76)
> > at
> > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(
> JUnit4TestReference.java:38)
> > at
> > org.eclipse.jdt.internal.junit.runner.TestExecution.run(
> TestExecution.java:38)
> > at
> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:460)
> > at
> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:673)
> > at
> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(
> RemoteTestRunner.java:386)
> > at
> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(
> RemoteTestRunner.java:196)
> > Caused by: java.lang.Exception:
> > org.apache.axis2.databinding.ADBException: Unexpected
> > subelement Include
> > at
> > org.knime.soda.services.TableContainer
> > $Factory.parse(TableContainer.java:529)
> > at
> > org.knime.soda.services.RetrieveDataResponse
> > $Factory.parse(RetrieveDataResponse.java:447)
> > at
> > org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(
> ExecuteWorkflowStub.java:1295)
> > ... 24 more
> > Caused by: org.apache.axis2.databinding.ADBException:
> > Unexpected
> > subelement Include
> > at
> > org.knime.soda.services.TableContainer
> > $Factory.parse(TableContainer.java:525)
> > ... 26 more
> >
> >
> >
> >
> > I suppose that the "Include" element mentioned is the
> > xop:include that
> > was sent with the response. The response looks like this:
> >
> >
> > <?xml version='1.0' encoding='UTF-8'?>
> > <soapenv:Envelope
> > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> > xmlns:wsa="http://www.w3.org/2005/08/addressing">
> > <soapenv:Header>
> > <wsa:ReplyTo>
> >
> > <wsa:Address>http://www.w3.org/2005/08/addressing/none
> </wsa:Address>
> > <wsa:ReferenceParameters>
> > <axis2:ServiceGroupId
> > xmlns:axis2="http://ws.apache.org/namespaces/axis2
> ">urn:uuid:6BD67F48DCEE91861B1202692300817</axis2:ServiceGroupId>
> > </wsa:ReferenceParameters>
> > </wsa:ReplyTo>
> >
> >
> <wsa:MessageID>urn:uuid:6BD67F48DCEE91861B1202692306472</wsa:MessageID>
> > <wsa:Action>urn:retrieveDataResponse</wsa:Action>
> >
> >
> <wsa:RelatesTo>urn:uuid:6BD67F48DCEE91861B1202692306419</wsa:RelatesTo>
> > </soapenv:Header>
> > <soapenv:Body>
> > <ns1:retrieveDataResponse
> > xmlns:ns1="http://knime.org/soda/services">
> > <outData binary="true">
> > <binaryData>
> > <xop:Include
> > href="cid:1.urn:uuid:6BD67F48DCEE91861B1202692306898@apache.org"
> > xmlns:xop="http://www.w3.org/2004/08/xop/include" />
> > </binaryData>
> > </outData>
> > <hasMoreData>false</hasMoreData>
> > </ns1:retrieveDataResponse>
> > </soapenv:Body>
> >
> >
> </soapenv:Envelope>--MIMEBoundaryurn_uuid_6BD67F48DCEE91861B1202692306896Content-Type:
> > application/octet-stream
> > [...]
> >
> >
> > One more strange thing: On the console I get the following:
> >
> > Exception in thread "HttpConnection-8080-6"
> > java.lang.IllegalStateException: Response already committed
> > at
> >
> org.apache.axis2.transport.http.server.AxisHttpResponseImpl.assertNotCommitted
> (AxisHttpResponseImpl.java:75)
> > at
> >
> org.apache.axis2.transport.http.server.AxisHttpResponseImpl.sendError(
> AxisHttpResponseImpl.java:110)
> > at
> > org.apache.axis2.transport.http.server.AxisHttpService.doService
> (AxisHttpService.java:291)
> > at
> >
> org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(
> AxisHttpService.java:166)
> > at
> > org.apache.axis2.transport.http.server.HttpServiceProcessor.run(
> HttpServiceProcessor.java:85)
> > at
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
> > at
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
> > at java.lang.Thread.run(Unknown Source)
> >
> >
> > Not sure if this is the cause, or a subsequent error....
> >
> >
> >
> >
> > Thanks in advance for any hints on that.
> >
> > kind regards,
> > Florian
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-user-help@ws.apache.org
> >
> >
> >
> >
> > --
> > Amila Suriarachchi,
> > WSO2 Inc.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
--
Thilina Gunarathne - http://thilinag.blogspot.com
Re: [AXIS2] ADB Parse error when using MTOM in response
Posted by Florian Georg <fl...@uni-konstanz.de>.
I´m using release 1.3
Any ideas? should I switch to a more recent build?
kind regards,
Florian
On Thu, 2008-02-14 at 10:47 +0530, Amila Suriarachchi wrote:
> What is the Axis2 version you use?
>
> Amila.
>
> On Feb 10, 2008 6:45 AM, Florian Georg <Fl...@uni-konstanz.de>
> wrote:
> Hi,
>
>
> I'm suddenly getting problems with the unmarshalling of by
> messages,
> after using MTOM to transfer binary data.
>
> My Client looks like this:
> [...]
> clientStub._getServiceClient().getOptions().setProperty(Constants.Configuration.ENABLE_MTOM,
> Constants.VALUE_TRUE);
>
> clientStub._getServiceClient().getOptions().setTimeOutInMilliSeconds(100000);
> clientStub._getServiceClient().getOptions().setManageSession(true);
> [...]
> RetrieveDataRequest retrieveRequest = new
> RetrieveDataRequest();
> retrieveRequest.setJobID(response.getJobID());
> retrieveRequest.setOutPort(0);
>
> RetrieveDataResponse retrieveResponse =
> clientStub.retrieveData(retrieveRequest); // <--- ERROR
>
>
>
> Everything looks fine, except on the client side I get an
> error like this:
>
> org.apache.axis2.AxisFault:
> org.apache.axis2.databinding.ADBException:
> Unexpected subelement Include
> at
> org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
> at
> org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(ExecuteWorkflowStub.java:1318)
> at
> org.knime.soda.services.client.ExecuteWorkflowStub.retrieveData(ExecuteWorkflowStub.java:886)
> at
> org.knime.soda.server.test.services.ExecuteWorkflowAsyncTest.testProgressPolling(ExecuteWorkflowAsyncTest.java:78)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown
> Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
> Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at
> org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:69)
> at junit.framework.TestResult
> $1.protect(TestResult.java:110)
> at
> junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at
> junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:76)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> Caused by: java.lang.Exception:
> org.apache.axis2.databinding.ADBException: Unexpected
> subelement Include
> at
> org.knime.soda.services.TableContainer
> $Factory.parse(TableContainer.java:529)
> at
> org.knime.soda.services.RetrieveDataResponse
> $Factory.parse(RetrieveDataResponse.java:447)
> at
> org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(ExecuteWorkflowStub.java:1295)
> ... 24 more
> Caused by: org.apache.axis2.databinding.ADBException:
> Unexpected
> subelement Include
> at
> org.knime.soda.services.TableContainer
> $Factory.parse(TableContainer.java:525)
> ... 26 more
>
>
>
>
> I suppose that the "Include" element mentioned is the
> xop:include that
> was sent with the response. The response looks like this:
>
>
> <?xml version='1.0' encoding='UTF-8'?>
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:wsa="http://www.w3.org/2005/08/addressing">
> <soapenv:Header>
> <wsa:ReplyTo>
>
> <wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address>
> <wsa:ReferenceParameters>
> <axis2:ServiceGroupId
> xmlns:axis2="http://ws.apache.org/namespaces/axis2">urn:uuid:6BD67F48DCEE91861B1202692300817</axis2:ServiceGroupId>
> </wsa:ReferenceParameters>
> </wsa:ReplyTo>
>
> <wsa:MessageID>urn:uuid:6BD67F48DCEE91861B1202692306472</wsa:MessageID>
> <wsa:Action>urn:retrieveDataResponse</wsa:Action>
>
> <wsa:RelatesTo>urn:uuid:6BD67F48DCEE91861B1202692306419</wsa:RelatesTo>
> </soapenv:Header>
> <soapenv:Body>
> <ns1:retrieveDataResponse
> xmlns:ns1="http://knime.org/soda/services">
> <outData binary="true">
> <binaryData>
> <xop:Include
> href="cid:1.urn:uuid:6BD67F48DCEE91861B1202692306898@apache.org"
> xmlns:xop="http://www.w3.org/2004/08/xop/include" />
> </binaryData>
> </outData>
> <hasMoreData>false</hasMoreData>
> </ns1:retrieveDataResponse>
> </soapenv:Body>
>
> </soapenv:Envelope>--MIMEBoundaryurn_uuid_6BD67F48DCEE91861B1202692306896Content-Type:
> application/octet-stream
> [...]
>
>
> One more strange thing: On the console I get the following:
>
> Exception in thread "HttpConnection-8080-6"
> java.lang.IllegalStateException: Response already committed
> at
> org.apache.axis2.transport.http.server.AxisHttpResponseImpl.assertNotCommitted(AxisHttpResponseImpl.java:75)
> at
> org.apache.axis2.transport.http.server.AxisHttpResponseImpl.sendError(AxisHttpResponseImpl.java:110)
> at
> org.apache.axis2.transport.http.server.AxisHttpService.doService(AxisHttpService.java:291)
> at
> org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(AxisHttpService.java:166)
> at
> org.apache.axis2.transport.http.server.HttpServiceProcessor.run(HttpServiceProcessor.java:85)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Unknown Source)
>
>
> Not sure if this is the cause, or a subsequent error....
>
>
>
>
> Thanks in advance for any hints on that.
>
> kind regards,
> Florian
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
>
>
> --
> Amila Suriarachchi,
> WSO2 Inc.
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org
Re: [AXIS2] ADB Parse error when using MTOM in response
Posted by Amila Suriarachchi <am...@gmail.com>.
What is the Axis2 version you use?
Amila.
On Feb 10, 2008 6:45 AM, Florian Georg <Fl...@uni-konstanz.de>
wrote:
> Hi,
>
>
> I'm suddenly getting problems with the unmarshalling of by messages,
> after using MTOM to transfer binary data.
>
> My Client looks like this:
> [...]
> clientStub._getServiceClient().getOptions().setProperty(
> Constants.Configuration.ENABLE_MTOM,
> Constants.VALUE_TRUE);
>
>
> clientStub._getServiceClient().getOptions().setTimeOutInMilliSeconds(100000);
> clientStub._getServiceClient().getOptions().setManageSession(true);
> [...]
> RetrieveDataRequest retrieveRequest = new RetrieveDataRequest();
> retrieveRequest.setJobID(response.getJobID());
> retrieveRequest.setOutPort(0);
>
> RetrieveDataResponse retrieveResponse =
> clientStub.retrieveData(retrieveRequest); // <--- ERROR
>
>
>
> Everything looks fine, except on the client side I get an error like this:
>
> org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException:
> Unexpected subelement Include
> at org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
> at
> org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(
> ExecuteWorkflowStub.java:1318)
> at
> org.knime.soda.services.client.ExecuteWorkflowStub.retrieveData(
> ExecuteWorkflowStub.java:886)
> at
>
> org.knime.soda.server.test.services.ExecuteWorkflowAsyncTest.testProgressPolling
> (ExecuteWorkflowAsyncTest.java:78)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at
> org.springframework.test.ConditionalTestCase.runBare(
> ConditionalTestCase.java:69)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java
> :76)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(
> JUnit4TestReference.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java
> :38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:460)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:673)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(
> RemoteTestRunner.java:386)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(
> RemoteTestRunner.java:196)
> Caused by: java.lang.Exception:
> org.apache.axis2.databinding.ADBException: Unexpected subelement Include
> at
> org.knime.soda.services.TableContainer$Factory.parse(TableContainer.java
> :529)
> at
> org.knime.soda.services.RetrieveDataResponse$Factory.parse(
> RetrieveDataResponse.java:447)
> at
> org.knime.soda.services.client.ExecuteWorkflowStub.fromOM(
> ExecuteWorkflowStub.java:1295)
> ... 24 more
> Caused by: org.apache.axis2.databinding.ADBException: Unexpected
> subelement Include
> at
> org.knime.soda.services.TableContainer$Factory.parse(TableContainer.java
> :525)
> ... 26 more
>
>
>
>
> I suppose that the "Include" element mentioned is the xop:include that
> was sent with the response. The response looks like this:
>
>
> <?xml version='1.0' encoding='UTF-8'?>
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:wsa="http://www.w3.org/2005/08/addressing">
> <soapenv:Header>
> <wsa:ReplyTo>
>
> <wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address>
> <wsa:ReferenceParameters>
> <axis2:ServiceGroupId
> xmlns:axis2="http://ws.apache.org/namespaces/axis2
> ">urn:uuid:6BD67F48DCEE91861B1202692300817</axis2:ServiceGroupId>
> </wsa:ReferenceParameters>
> </wsa:ReplyTo>
>
> <wsa:MessageID>urn:uuid:6BD67F48DCEE91861B1202692306472</wsa:MessageID>
> <wsa:Action>urn:retrieveDataResponse</wsa:Action>
>
> <wsa:RelatesTo>urn:uuid:6BD67F48DCEE91861B1202692306419</wsa:RelatesTo>
> </soapenv:Header>
> <soapenv:Body>
> <ns1:retrieveDataResponse
> xmlns:ns1="http://knime.org/soda/services">
> <outData binary="true">
> <binaryData>
> <xop:Include
> href="cid:1.urn:uuid:6BD67F48DCEE91861B1202692306898@apache.org"
> xmlns:xop="http://www.w3.org/2004/08/xop/include" />
> </binaryData>
> </outData>
> <hasMoreData>false</hasMoreData>
> </ns1:retrieveDataResponse>
> </soapenv:Body>
>
>
> </soapenv:Envelope>--MIMEBoundaryurn_uuid_6BD67F48DCEE91861B1202692306896Content-Type:
> application/octet-stream
> [...]
>
>
> One more strange thing: On the console I get the following:
>
> Exception in thread "HttpConnection-8080-6"
> java.lang.IllegalStateException: Response already committed
> at
>
> org.apache.axis2.transport.http.server.AxisHttpResponseImpl.assertNotCommitted
> (AxisHttpResponseImpl.java:75)
> at
> org.apache.axis2.transport.http.server.AxisHttpResponseImpl.sendError(
> AxisHttpResponseImpl.java:110)
> at
> org.apache.axis2.transport.http.server.AxisHttpService.doService(
> AxisHttpService.java:291)
> at
> org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(
> AxisHttpService.java:166)
> at
> org.apache.axis2.transport.http.server.HttpServiceProcessor.run(
> HttpServiceProcessor.java:85)
> at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
> at
>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Unknown Source)
>
>
> Not sure if this is the cause, or a subsequent error....
>
>
>
>
> Thanks in advance for any hints on that.
>
> kind regards,
> Florian
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
--
Amila Suriarachchi,
WSO2 Inc.