axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Georg <Florian.Ge...@uni-konstanz.de>
Subject [AXIS2] ADB Parse error when using MTOM in response
Date Sun, 10 Feb 2008 01:15:38 GMT
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


Mime
View raw message