Praveen: Here is an example from Michelle Cope constructing DataHandler using URL http://access1.sun.com/techarticles/SOAPMessage.XML.html 

Here is a way to construct DataHandler using a specific file as arg to FileDataSource
http://ws.apache.org/wsif/developers/mime_attachments.html

Is there something specific you are driving at?
-Martin
----- Original Message ----- >From: "Praveen Peddi" <[EMAIL PROTECTED]>>To: <[EMAIL PROTECTED]>>Sent: Monday, December 22, 2003 10:17 AM >Subject: Re: Sending response as stream > > > > I serialized the List to byte[] and sent it as attachment (DataHandler). >But > > I had to use soap specific class on my server side. As I mentioned in my > > previous email our soap services are transparent from our soap tool so >far. > > But with this attachment stuff, I had to use some soap specifc classes. > > Following is the code I used to build DataHandler. > > > > byte [] returnBytes = null; > > ByteArrayOutputStream out = new ByteArrayOutputStream(); > > ObjectOutputStream s; > > try { > > s = new ObjectOutputStream(out); > > s.writeObject(objects); > > s.flush(); > > returnBytes = out.toByteArray(); > > objects = null; > > log.debug("SIZE OF THE RETURNING BYTES:"+returnBytes.length); > > DataSource ds = new ByteArrayDataSource(returnBytes, > > "application/octet-stream"); > > dh = new DataHandler(ds); > > } catch (Throwable ex) { > > log.error("Unable to serialize the object list.", ex); > > throw new SearchException(ISearchResourceKeys.UNABLE_TO_COMPLETE_QUERY, > > ex); > > } > > > > Is there anyway I can the above code so I don't have to use > > org.apache.soap.util.mime.ByteArrayDataSource to build the DataHandler? > > > > > > Praveen > > > > ---- Original Message ----- > > From: "Scott Nichol" <[EMAIL PROTECTED]>> > To: <[EMAIL PROTECTED]>> > Sent: Friday, December 19, 2003 3:51 PM > > Subject: Re: Sending response as stream > > > > > > Looking at SOAPMappingRegistry, the following classes are all serialized >as > > attachments. > > > > javax.mail.internet.MimeBodyPart.class, > > java.io.InputStream.class, > > javax.activation.DataSource.class, > > javax.activation.DataHandler.class, > > > > If your method returns your List as, say, an InputStream, I believe you >will > > find its contents are included as an attachment. > > > > One thing to watch out for with attachments. Last time I looked, .NET >only > > supported DIME attachments. The SOAP Attachments specs (which MSFT > > co-authored) calls for MIME attachments, which is what Apache SOAP uses. > > > > Scott Nichol > > > > Do not send e-mail directly to this e-mail address, > > because it is filtered to accept only mail from > > specific mail lists. > > ----- Original Message ----- > > From: "Praveen Peddi" <[EMAIL PROTECTED]>> > To: <[EMAIL PROTECTED]>> > Sent: Friday, December 19, 2003 11:31 AM > > Subject: Re: Sending response as stream > > > > > > > Hello all, > > > Is there a way a method in a soap service can return an object > > > (java.util.List) as attachment with out using soap specific classes. > > > I was looking at the mime example in soap samples and it was using > > > ByteArrayDatasource which is soap specific class. > > > The example I saw looked like this: > > > DataSource ds = new ByteArrayDataSource(new File(fname[i]), null); > > > > > > I think my question probably is "Is there any way to build a DataHandler > > > object w/o using apache soap tool on the server side?" > > > > > > I am trying send the java.util.List as an attachment. the list has >strings > > > in it. The reason I want to send it as attachment is because the list >has > > > 1000s of strings and sending it as List will fillup the soap envelop and > > > putting overhead of parsing the huge xml which in turn is filling up all > > my > > > memory with the parsed document. If I send the same list as an >attchment, > > I > > > am assuming that I will not have this problem. The size of the list >itself > > > is not a problem I think. Its the size of the soap envelop thats killing > > the > > > app. > > > > > > Am I right? > > > > > > The reason I do not want to use soap specific classes is because our >soap > > > services are plain java classes and designed such a way that we can >swith > > to > > > any soap tool in the future. > > > > > > Thanks. > > > > > > Praveen > > > > > > ----- Original Message ----- > > > From: "Martin Gainty" <[EMAIL PROTECTED]>> > > To: <[EMAIL PROTECTED]>> > > Sent: Wednesday, December 17, 2003 1:15 AM > > > Subject: Re: Sending response as stream > > > > > > > > > > Read this > > > > http://www.w3.org/2000/xp/Group/2/07/SOAP-AF/aftf-soap-af.html > > > > Regards, > > > > Martin > > > > ----- Original Message ----- > > > > From: "Praveen Peddi" <[EMAIL PROTECTED]>> > > > To: <[EMAIL PROTECTED]>> > > > Sent: Tuesday, December 16, 2003 11:32 AM > > > > Subject: Re: Sending response as stream > > > > > > > > > > > > > Does it mean that attachments are sent as streams and not part of >soap > > > > > envelop? > > > > > > > > > > I think my problem here is the memory and time. So If I send it as > > > > > attachment, the client can read the stream and may be save it to >disk > > > > rather > > > > > than filling the memory? > > > > > > > > > > Praveen > > > > > > > > > > ----- Original Message ----- > > > > > From: "Scott Nichol" <[EMAIL PROTECTED]>> > > > > To: <[EMAIL PROTECTED]>> > > > > Sent: Tuesday, December 16, 2003 10:54 AM > > > > > Subject: Re: Sending response as stream > > > > > > > > > > > > > > > Attachments are the one way I can think of to minimize the >processing > > > > Apache > > > > > SOAP will do. > > > > > > > > > > Scott Nichol > > > > > > > > > > Do not send e-mail directly to this e-mail address, > > > > > because it is filtered to accept only mail from > > > > > specific mail lists. > > > > > ----- Original Message ----- > > > > > From: "Praveen Peddi" <[EMAIL PROTECTED]>> > > > > To: <[EMAIL PROTECTED]>> > > > > Sent: Tuesday, December 16, 2003 10:30 AM > > > > > Subject: Sending response as stream > > > > > > > > > > > > > > > HI all, > > > > > We are using apache soap both on serverside and on client side. > > > > > I am trying to write a method in soap service that returns thousands > > of > > > > > objects that are converted into xml elements. Returning the whole > > > response > > > > > as an xml string is taking for ever. I am wondering if I can send >the > > > > > response as an output stream rather than as xml string. > > > > > > > > > > How about sending the response as attachment. Will it do any better. >I > > > > think > > > > > attachments are sent as streams if I am not wrong. > > > > > > > > > > Thanks > > > > > Praveen > > > > > > > > > > > > > > > > > > > > > > > >


Check your PC for viruses with the FREE McAfee online computer scan.

Reply via email to