[jboss-user] [JBossWS] - MTOM/SwA enabled file transfer

biroj do-not-reply at jboss.com
Mon Mar 26 14:35:39 EDT 2007


 Hi,

 My configuration is:

 JBossAS 4.0.5
 JBossWS 1.2.0GA
 EJB3 shipped with JBossAS 4.0.5

I've tried to publish an EJB3 WS (using contract-first model) with MTOM enabled file transfer as it is proposed by the JBossWS guideline.
I compiled the WSDL with wsconsume as appropriate and added the following annotations to the EJB3 POJO.


  | @Stateless
  | @Remote(ETI_Receiver.class)
  | @WebService(endpointInterface="generated.wsdl.EMServicesPortType"
  | 	, wsdlLocation="META-INF/wsdl/Services.wsdl"
  | 	, targetNamespace="http://my.com/ws" 	
  | 	, portName = "EMServicesPort")
  | @BindingType(value=javax.xml.ws.soap.SOAPBinding.SOAP11HTTP_MTOM_BINDING)
  | public class ETI_ReceiverBean extends ETI_CommonReceiverServices implements ETI_Receiver {
  | 

The endpoint works well, till I try to send send an attachment with MTOM/SwA enabled. The normal attachments are works fine, but if I enable MTOM or simple SwA at client side (Axis2 code, see below)


  | EMServicesStub emstub = new EMServicesStub(uri);
  |         Options options = new Options();
  | options.setProperty(Constants.Configuration.ENABLE_MTOM, Constants.VALUE_TRUE);
  | //options.setProperty(Constants.Configuration.ENABLE_SWA, Constants.VALUE_TRUE);
  | emstub._getServiceClient().setOptions(options);
  | 

it drops a SOAPRequest exception


  | 2007-03-26 20:24:06,062 INFO  [org.jboss.system.server.Server] JBoss (MX MicroKernel) [4.0.5.GA (build: CVSTag=Branch_4_0 date=200610162339)] Started in 1m:16s:344ms
  | 2007-03-26 20:25:10,234 DEBUG [org.jboss.ws.core.server.AbstractServiceEndpointServlet] doPost: /ETI-ETI_Framework/ETI_ReceiverBean
  | 2007-03-26 20:25:10,250 DEBUG [org.jboss.ws.core.soap.MessageContextAssociation] pushMessageContext: org.jboss.ws.core.jaxws.handler.SOAPMessageContextJAXWS at e0e9d5 (Thread http-0.0.0.0-8080-1)
  | 2007-03-26 20:25:10,250 DEBUG [org.jboss.ws.core.server.ServiceEndpoint] BEGIN handleRequest: jboss.ws:context=ETI-ETI_Framework,endpoint=ETI_ReceiverBean
  | 2007-03-26 20:25:10,312 DEBUG [org.jboss.ws.core.soap.MessageFactoryImpl] createMessage: [contentType=multipart/related; 
  | 	boundary=MIMEBoundaryurn_uuid_6BC0C2D8E13C69924211749335100931; 
  | 	type="application/xop+xml"; 
  | 	start="<0.urn:uuid:6BC0C2D8E13C69924211749335100932 at apache.org>"; 
  | 	start-info="text/xml"; charset=UTF-8]
  | 2007-03-26 20:25:10,343 DEBUG [org.jboss.ws.core.soap.attachment.SwapableMemoryDataSource] Using memory buffer, size = 8044
  | 2007-03-26 20:25:10,750 DEBUG [org.jboss.ws.metadata.umdm.EndpointMetaData] Configure SOAPBinding
  | 2007-03-26 20:25:10,750 ERROR [org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS] SOAP request exception
  | java.lang.IllegalArgumentException: multipart/related stream invalid, no root part was found
  | 	at org.jboss.ws.core.soap.attachment.MultipartRelatedDecoder.decodeMultipartRelatedMessage(MultipartRelatedDecoder.java:156)
  | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:211)
  | 	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:171)
  | 	at org.jboss.ws.core.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:185)
  | 	at org.jboss.ws.core.server.ServiceEndpointManager.processSOAPRequest(ServiceEndpointManager.java:440)
  | 	at org.jboss.ws.core.server.AbstractServiceEndpointServlet.doPost(AbstractServiceEndpointServlet.java:114)
  | 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
  | 	at org.jboss.ws.core.server.AbstractServiceEndpointServlet.service(AbstractServiceEndpointServlet.java:75)
  | 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
  | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
  | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  | 	at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
  | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
  | 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
  | 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
  | 	at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
  | 	at java.lang.Thread.run(Thread.java:595)
  | 

Could you help me a little how to solve this issue? Any idea?

Thanks a lot for your help in advance,
Bye,
Janos

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4031742#4031742

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4031742



More information about the jboss-user mailing list