Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

WLS7 WebServices SOAP with attachments problem

1 view
Skip to first unread message

Steve Sweet

unread,
Jan 8, 2003, 10:50:01 AM1/8/03
to
I have implemented a WebService in Weblogic. If I use the standard Sun
JAXM library to invoke the service *without* any attachments, it works
fine. However, if I use the standard JAXM functionality to add a gif
image to the message, Weblogic throws an exception (attached below)
before it even invokes the handler class for my Web Service.

Basically, the JAXM library does not insert the "start=..." element in
the top level "Content-Type" HTTP header field. Should Weblogic cope
with this, or is it not designed to work with the Sun JAXM library. I
am using the latest version of the Sun WebServices Developers Kit and,
hence, the latest version of the JAXM library. Do BEA recommend a
different client library be used to invoke Weblogic WebServices? If
so which one(s) are supported?

I have another question. Assuming I can find a client which will
deliver to Weblogic an HTTP SOAP mesage that it considers to be valid,
how do attachments get passed to the "component" class? I understand
how I could iterate through the mime segments / attachments from
within the "handler", but I don't understand how / if attachments are
passed onto the actual component class. Reading from the FAQ:

Q. Does WebLogic Server 7.0 support SOAP Messages with Attachments?

A. Yes. As long as the data type of the attachment is on the list of
supported JAX-RPC data types, then WebLogic Server will automatically
handle parameters to Web services that are SOAP attachments. If you
want to do further processing of the attachment, you can use handlers
to intercept the request and response SOAP message (which includes the
attachment.)

I get the impression that attachments are "magically" available to
code within the component, but I don't understand the actual mechanics
of this.

Any thoughts would be gratefully received.

Cheers,
Steve


javax.xml.soap.SOAPException: No start attachment specified in the
Multipart/Rel
ated document
at weblogic.webservice.core.soap.SOAPMessageImpl.handleMimeMessage(SOAPM
essageImpl.java:174)
at weblogic.webservice.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.
java:118)
at weblogic.webservice.core.soap.MessageFactoryImpl.createMessage(Messag
eFactoryImpl.java:27)
at weblogic.webservice.binding.soap.HttpServerBinding.receive(HttpServer
Binding.java:50)
at weblogic.webservice.core.DefaultWebService.invoke(DefaultWebService.j
ava:216)
at weblogic.webservice.server.servlet.ServletBase.serverSideInvoke(Servl
etBase.java:362)
at weblogic.webservice.server.servlet.WebServiceServlet.serverSideInvoke
(WebServiceServlet.java:269)
at weblogic.webservice.server.servlet.ServletBase.doPost(ServletBase.jav
a:346)
at weblogic.webservice.server.servlet.WebServiceServlet.doPost(WebServic
eServlet.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:5412)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:744)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:3086)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:2544)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
<08-Jan-03 15:22:54 GMT> <Error> <HTTP> <101017>
<[ServletContext(id=2655643,nam
e=mms_service_05.war,context-path=/mms_service_05)] Root cause of
ServletExcepti
on
javax.xml.soap.SOAPException: No start attachment specified in the
Multipart/Rel
ated document
at weblogic.webservice.core.soap.SOAPMessageImpl.handleMimeMessage(SOAPM
essageImpl.java:174)
at weblogic.webservice.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.
java:118)
at weblogic.webservice.core.soap.MessageFactoryImpl.createMessage(Messag
eFactoryImpl.java:27)
at weblogic.webservice.binding.soap.HttpServerBinding.receive(HttpServer
Binding.java:50)
at weblogic.webservice.core.DefaultWebService.invoke(DefaultWebService.j
ava:216)
at weblogic.webservice.server.servlet.ServletBase.serverSideInvoke(Servl
etBase.java:362)
at weblogic.webservice.server.servlet.WebServiceServlet.serverSideInvoke
(WebServiceServlet.java:269)
at weblogic.webservice.server.servlet.ServletBase.doPost(ServletBase.jav
a:346)
at weblogic.webservice.server.servlet.WebServiceServlet.doPost(WebServic
eServlet.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:5412)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:744)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:3086)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:2544)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
>

0 new messages