On Fri, 2008-03-14 at 16:35 -0400, Thilina Gunarathne wrote:
> Hi,
> >  What we did in Axis2/Java to overcome this is to read the data to a
> byte[] buffer of up to a certain size (the size threshold). If there
> are more data available in the mime part (if we have not encountered
> the boundary yet) then we know this attachment is bigger than the
> threshold. So we create the temp file, pump the content in the buffer
> to the file, then pump the rest of the stream to the file..

Here are you pumping the rest of the whole stream or till it finds the
end of that particular mime part ?  

If yes then how you find the end of the mime part ? Because if the mime
boundary is divided in a part which is already written to the file and
in a part which needs to be read won't there be a problem ? 

-Manjula.

>  In this
> way we do not need to know the size of the attachment upfront.. BTW we
> do all of the above while we are parsing the MIME message at the MIME
> parser level..



> 
> >  > This has the plus point that the attachment size will be
> >  > limited only by the available free space in the Temp Directory..
> >  > Will that be possible in Axis2/C.. Or is that wat you have in mind :)..
> >
> >  Yes this is possible.
> But in Axis2/JAVA we will get a OutOfMemory if we parse a large MIME
> part upfront, since it reads the attachment to memory. May be you can
> have a larger limit with C than in Java, but ultimately you'll come to
> a situation where you will not have enough memory to store that MIME
> part in memory in the parsing time, unless you write in to a File
> while parsing,..
> 
> thanks,
> Thilina
> 
> >
> >
> >
> >  >
> >  > thanks,
> >  > Thilina
> >  >
> >  >  >and keeping the file name inside
> >  > >  data_handler instead of the whole buffer. So the service or the client
> >  > >  will get the file name instead of the buffered stream, when it 
> > receives
> >  > >  an attachment. This will not prevent buffering the attachment at the
> >  > >  transport but will prevent keeping it inside the om_tree till it 
> > reaches
> >  > >  the receiver.
> >  > >
> >  > >  Before implementing this I would like to know your suggestions 
> > regarding
> >  > >  this.
> >  > >
> >  > >  [1] https://issues.apache.org/jira/browse/AXIS2C-672
> >  > >
> >  > >  Thanks,
> >  > >  -Manjula
> >  > >
> >  > >  --
> >  > >  Manjula Peiris: http://manjula-peiris.blogspot.com/
> >  > >
> >  > >
> >  > >  ---------------------------------------------------------------------
> >  > >  To unsubscribe, e-mail: [EMAIL PROTECTED]
> >  > >  For additional commands, e-mail: [EMAIL PROTECTED]
> >  > >
> >  > >
> >  >
> >  >
> >  >
> >
> >
> >  ---------------------------------------------------------------------
> >  To unsubscribe, e-mail: [EMAIL PROTECTED]
> >  For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> 
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to