Hmm... if you are getting an error at that point, it looks like the mtom stuff isn't working. With JAXB, non-attached base64 data is indeed completely in memory. It's actually worse than that. It reads it in as one big string and then parses the string into a byte[] so it's in memory as both the string and the byte[]. I keep meaning to log an issue with the jaxb team about that. :-(
However, with attachments, that shouldn't be the case. We stream the attachement directly when we can (they are processed in the order they occur on the wire) or, if the attachment hits a certain threashold (I think 64K by default, I'd have to check), it starts using temporary files on disk. Is there any way you could send small file and tcpdump the wire to see if attachments really are being sent? Dan On Friday 31 August 2007, Verachten Bruno wrote: > Hi, > > > > Did I miss something, or is it just not possible to send big > > > files? > > I finally found why sending big files didn't work: > java.lang.OutOfMemoryError: Java heap space > at > com.sun.xml.bind.DatatypeConverterImpl._parseBase64Binary(DatatypeConv >er terImpl.java:569) > Does it mean the complete content of the file is in memory? > > Thanks in advance, > > Bruno Verachten -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727 C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
