Instead of the ImageDataSource used in the online example try it with the ByteArrayDataSource to load your binary content. There is a constructor that takes a byte[] that works very nicely.
API docs for this class are at: http://ws.apache.org/commons/axiom/apidocs/index.html -----Original Message----- From: Michele Mazzucco [mailto:[EMAIL PROTECTED] Sent: Thursday, May 04, 2006 9:35 AM To: [email protected] Subject: Re: [Axis2] MTOM & binary content Micheal, my question comes from there, since the sample shown at http://ws.apache.org/axis2/0_95/mtom-guide.html loads and sends jpg files using the org.apache.axis2.attachments.utils classes, while it seems there's nothing similar to handle other formats. Michele Michael Robinson wrote: > My "solution" only loads binary content into an OMElement (not really my > solution... just copied and pasted from the online docs). > > For MTOM compliance see http://ws.apache.org/axis2/0_95/mtom-guide.html > > > -----Original Message----- > From: Michele Mazzucco [mailto:[EMAIL PROTECTED] > Sent: Thursday, May 04, 2006 7:38 AM > To: [email protected] > Subject: Re: [Axis2] MTOM & binary content > > Hi Micheal, > > thanks for your reply. Is your solution MTOM compliant? > > Michael Robinson wrote: >> XMLStreamReader parser = >> XMLInputFactory.newInstance().createXMLStreamReader(new >> FileReader(inputFile)); >> >> >> >> OMXMLParserWrapper builder = >> > OMXMLBuilderFactory.createStAXOMBuilder(OMAbstractFactory.getOMFactory() > , >> parser); >> >> >> >> OMElement xmlDocElement = builder.getDocumentElement(); >> >> >> >> This assumes that "inputFile" is a java.io.File. This code can be > found at: >> >> >> *MailScanner has detected a possible fraud attempt from > "ws.apache.org" >> claiming to be* http://ws.apache..org/axis2/0_95/OMTutorial.html >> <http://ws.apache.org/axis2/0_95/OMTutorial.html> >> >> >> >> >> >> -----Original Message----- >> From: Michele Mazzucco [mailto:[EMAIL PROTECTED] >> Sent: Thursday, May 04, 2006 6:36 AM >> To: [email protected] >> Subject: Re: [Axis2] MTOM & binary content >> >> >> >> Hi Ajith, >> >> >> >> thanks for your reply. My questions, actually, is: >> >> >> >> In the MTOM sample application, the client has this metho >> >> >> >> private OMElement createEnvelope(String fileName) throws Exception { >> >> >> >> DataHandler expectedDH; >> >> OMFactory fac = OMAbstractFactory.getOMFactory(); >> >> OMNamespace omNs = > fac.createOMNamespace("http://localhost/my", >> "my"); >> >> >> >> OMElement data = fac.createOMElement("mtomSample", omNs); >> >> OMElement image = fac.createOMElement("image", omNs); >> >> Image expectedImage; >> >> expectedImage = new ImageIO() >> >> .loadImage(new FileInputStream(inputFile)); >> >> >> >> ImageDataSource dataSource = new ImageDataSource("test.jpg", >> >> expectedImage); >> >> expectedDH = new DataHandler(dataSource); >> >> OMText textData = fac.createOMText(expectedDH, true); >> >> image.addChild(textData); >> >> >> >> OMElement imageName = fac.createOMElement("fileName", omNs); >> >> if (fileName != null) { >> >> imageName.setText(fileName); >> >> } >> >> //OMElement wrap = fac.createOMElement("wrap",omNs); >> >> // data.addChild(image); >> >> data.addChild(imageName); >> >> data.addChild(image); >> >> //data.addChild(wrap); >> >> return data; >> >> >> >> } >> >> >> >> >> >> If I need to send something different from an image, what function >> >> should I call instead of >> >> >> >> Image expectedImage; >> >> expectedImage = new ImageIO().loadImage(new > FileInputStream(inputFile)); >> FileOutputStream imageOutStream = new FileOutputStream(fileName); >> >> new ImageIO().saveImage("image/jpeg", actualObject, imageOutStream); >> >> >> >> ? >> >> >> >> >> >> And on the server side, what function should I call instead of >> >> >> >> Image actualObject = new ImageIO().loadImage(actualDH.getDataSource() >> >> ..getInputStream()); >> >> >> >> ? >> >> >> >> Thanks, >> >> Michele >> >> Ajith Ranabahu wrote: >> >>> Hi, >>> As far as the content is concerned the zip file is a "binary" file >>> just like the image file. All you have to do is read the file through >>> a file input stream and then create a new DataSource using that >>> inputstream. >>> Ajith >>> On 5/4/06, Michele Mazzucco <[EMAIL PROTECTED]> wrote: >>>> Hi all, >>>> the tutorial show how to send images with MTOM, but how can I send >>>> binary files with MTOM (say .zip files)? >>>> Thanks in advance, >>>> Michele >>> -- >>> Ajith Ranabahu >> > ------------------------------------------------------------------------ >> >> * >> This e-mail and any files transmitted with it are intended solely >> for the use of the entity or individual(s) to whom they are >> addressed and not for reliance upon by unintended recipients. If >> you are not the intended recipient or the person responsible for >> delivering the e-mail to the intended recipient be advised that you >> have received this e-mail in error and that any use, dissemination, >> forwarding, printing, or copying of this e-mail and any files >> transmitted are strictly prohibited. If you have received this >> e-mail in error please delete the entire email and immediately >> notify us by email to the sender or by telephone to the AOC main >> office number, (404) 656-5171. Thank you. >> * >>
