I were trying the same method call when I tried to download the file then I received the exception. I was able to see the attachment but I couldn't retrieve it.
Thanks. ndthuy wrote: > > Hi Thilina, > > After taking a look at those articles, I am able to upload the file > without any problem. But when I download the file, I received this error: > > Exception in thread "main" org.apache.axiom.om.OMException: > javax.mail.MessagingException: Error in input stream; > nested exception is: > java.io.IOException: Attempted read on closed stream. > at > org.apache.axiom.attachments.Attachments.getPart(Attachments.java:602) > at > org.apache.axiom.attachments.Attachments.getNextPartDataHandler(Attachments.java:462) > at > org.apache.axiom.attachments.Attachments.getDataHandler(Attachments.java:278) > at > org.apache.axis2.context.MessageContext.getAttachment(MessageContext.java:1623) > at > com.cvg.ap.service.publicservices.impl.APContentManagementServicesStub.fetchContentFile(APContentManagementServicesStub.java:810) > at > com.cvg.ap.service.publicservices.impl.APContentManagementServicesImpl.fetchContentFile(APContentManagementServicesImpl.java:256) > at > com.cvg.ap.service.publicservices.impl.APContentManagementServicesImpl.main(APContentManagementServicesImpl.java:463) > Caused by: javax.mail.MessagingException: Error in input stream; > nested exception is: > java.io.IOException: Attempted read on closed stream. > at javax.mail.internet.InternetHeaders.load(InternetHeaders.java:142) > at javax.mail.internet.InternetHeaders.<init>(InternetHeaders.java:93) > at javax.mail.internet.MimeBodyPart.<init>(MimeBodyPart.java:124) > at > org.apache.axiom.attachments.PartOnMemory.<init>(PartOnMemory.java:34) > at > org.apache.axiom.attachments.Attachments.getPart(Attachments.java:598) > ... 6 more > > > This is the soap message when I upload and download: > > </soapenv:Envelope>--MIMEBoundaryurn_uuid_1ADD9EC725995A3FD11206998815387Content-Type: > application/octet-streamContent-Transfer-Encoding: binaryContent-ID: > <urn:uuid:1ADD9EC725995A3FD11206998814743>/* Pogue.cs - Custom > Rogue class3a--MIMEBoundaryurn_uuid_1ADD9EC725995A3FD11206998815387--0 > > This is soap message when I download: > > --MIMEBoundaryurn_uuid_5042108D598DCCE8AE1206999131913 > 7e8 > > Content-Type: application/octet-stream > Content-Transfer-Encoding: binary > Content-ID: > <urn:uuid:5042108D598DCCE8AE1206999117974>/* Pogue.cs - Custom > Rogue class > 38 > > --MIMEBoundaryurn_uuid_5042108D598DCCE8AE1206999131913 > 2 > -- > 0 > > Do you think it is because the way it prepares the SOAP message on server > side ? Thanks for your help. > > Thanks. > > > > > Thilina Gunarathne wrote: >> >> Hi, >> I would have a WSDL with a string return field (or a complex type >> containing a string element) and would assign the content-id to that >> string. >> >> You can have a look at the following articles to figure out how to add >> the attachment in the service implementation class.. >> http://wso2.org/library/1675 >> http://wso2.org/library/1148 >> >> String contentId = messageContext.addAttachment(dataHandler); >> >> thanks, >> Thilina >> >> >> On Mon, Mar 31, 2008 at 11:14 AM, ndthuy <[EMAIL PROTECTED]> wrote: >>> >>> Thanks Thilina, >>> >>> I was able to modify according to your suggestion to upload the file >>> using >>> ADB with SwA. >>> >>> But for the dowload using ADB with SwA, how do we modify the SOAP >>> message to >>> attach the binary data ? >>> Do we have to modify in invokeBusinessLogic(...) function ? >>> >>> Thanks. >>> >>> >>> >>> Thilina Gunarathne wrote: >>> > >>> > Hi, >>> > You cannot generate WSDL with the knowledge of SwA in them.. AFAIK >>> > there isn't a standard way to mention SwA attachments in WSDL.. ADB >>> > does not support SwA directly.. >>> > >>> > What you can do in the server side is to have your method signature >>> > take in an String which will be the content-id of the attachment, >>> then >>> > retrieve your attachment from the messageContext manually using it... >>> > Have a look at [1] & [2].. >>> > >>> > Your following method will result in an MTOM WSDL, where dataHandler >>> > will get bound to an base64Binary element. >>> > >>> >> addContentFile(String userID, String password, >>> >> String serviceID, DataHandler dataHandler, >>> >> String relAddFilepathName, String >>> contentType, >>> >> String source) >>> > >>> > thanks, >>> > Thilina >>> > >>> > [1] Using SOAP with Attachments in Apache Axis2 - >>> > http://wso2.org/library/1148 >>> > [2] Downloading a Binary File from a Web Service using Axis2 and SOAP >>> > with Attachments - http://wso2.org/library/1675 >>> > >>> >> >>> >> How do I write a wsdl for it so I can generate the client and >>> server >>> >> using >>> >> ADB. >>> >> >>> >> >>> >> >>> >> Thanks >>> >> -- >>> >> View this message in context: >>> >> >>> http://www.nabble.com/Using-SWA-with-ADB-in-axis2-tp16335414p16335414.html >>> >> Sent from the Axis - User mailing list archive at Nabble.com. >>> >> >>> >> >>> >> >>> --------------------------------------------------------------------- >>> >> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> >> For additional commands, e-mail: [EMAIL PROTECTED] >>> >> >>> >> >>> > >>> > >>> > >>> > -- >>> > Thilina Gunarathne - http://thilinag.blogspot.com >>> > >>> > --------------------------------------------------------------------- >>> > To unsubscribe, e-mail: [EMAIL PROTECTED] >>> > For additional commands, e-mail: [EMAIL PROTECTED] >>> > >>> > >>> > >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/Using-SWA-with-ADB-in-axis2-tp16335414p16396897.html >>> >>> >>> Sent from the Axis - User mailing list archive at Nabble.com. >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> >> >> >> >> -- >> Thilina Gunarathne - http://thilinag.blogspot.com >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> > > -- View this message in context: http://www.nabble.com/Using-SWA-with-ADB-in-axis2-tp16335414p16447064.html Sent from the Axis - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]