Josh,

This was very helpful -- thanks a lot!  I've
implemented my service this way, and I return the URL
of the attachment content-id as the return-value of
the call.  

I have another question.  The WSDL created by
Java2WSDL doesn't mention the file that I return as an
attachment.  Should I revise the WSDL by hand
so that the binding includes something like this:

<mime:multipartRelated>
  <mime:part>
     <soap:body parts="body" use="literal"/>
  </mime:part>
  <mime:part>
     <mime:content part="file" type="audio/x-wav"/>
  <mime:part>

Do I need some sort of mime stuff in the binding
section for my server to work with a variety of
clients?

   Mark

--- Josh Kropf <[EMAIL PROTECTED]> wrote:
> Mark,
> 
> After working with Axis for a while then migrating
> to BEA Weblogic, I have
> found that the best way to attach files is to do it
> through handlers.
> However it's equaly as viable to do it in your Web
> Service for example:
> 
> Message message =
>
MessageContext.getCurrentContext().getResponseMessage();
> javax.xml.soap.AttachmentPart ap =
> message.createAttachmentPart();
> ap.setContent(new
> FileInputStream("/home/jkropf/Calc.asmx"),
> "text/plain");
> message.addAttachmentPart( ap );
> 
> However if you choose to do the above in a handler,
> a MessageContext object
> will be passed through the invoke method (see sample
> 4 in axis for handler
> implementation). You can then simply call
> msgContext.getCurrentMessage()
> with this object to get the message and start adding
> AttachmentPart's to it.
> 
> Hope this helps
> 
> -----Original Message-----
> From: Mark Mueller [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, January 23, 2003 1:27 PM
> To: [EMAIL PROTECTED]
> Subject: Interoperative attachments
> 
> 
> I've been following this list for weeks now and
> concepts are slowly sinking in.  I'm still a bit
> puzzled by attachments, though.
> 
> I'm developing a service that returns a file to the
> client.  In the server code I return a DataHandler
> object which Axis nicely turns into an attachment.
> My
> concern is the wsdl which describes the type as:
> type="apachesoap:DataHandler".  Will non-Java
> clients
> handle this type correctly, or should I be rewriting
> my service is some more generic way that avoids
> using
> the DataHandler?
> 
>    Mark
> 
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up
> now.
> http://mailplus.yahoo.com
> 


__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

Reply via email to