On Mon, Jun 29, 2009 at 12:48 PM, Markus Wiederkehr < [email protected]> wrote:
> On Mon, Jun 29, 2009 at 11:57 AM, Christophe MOURETTE > (AKIO)<[email protected]> wrote: > > On Mon, Jun 29, 2009 at 11:52 AM, Stefano Bagnara <[email protected]> > wrote: > > > >> > >> What mime4j version are you using? > > > > maven artefact 0;6 > > > >> > >> How do you load the message stream? > > > > with this code : > > IContentHandler handler = DefaultContentHandler.getInstance(); > > MimeStreamParser parser = new MimeStreamParser(); > > parser.setContentHandler(handler); > > if (handler.containsCRLF(inputStream)){ > > parser.parse(inputStream); > > }else{ > > parser.parse(new EOLConvertingInputStream(new > > BufferedInputStream(inputStream))); > > } > > Okay, so you use your own ContentHandler implementation, > DefaultContentHandler, right? implements org.apache.james.mime4j.parser.ContentHandler > > Did you make sure to push back the first line of text that your > implementation reads in it's containsCRLF() method? containsCRLF() is specific for cr with equals symbols each 80 chars. > > Besides, I don't think you have to make that distinction, Mime4j > should be able to parse all kinds of eol styles automatically.. i don't know if the problem is in this 2 methods : public void startMessage() throws MimeException { if (stack.isEmpty()) { stack.push(this.entity); } else { expect(Entity.class); Message m = new Message(); ((Entity) stack.peek()).setBody(m); stack.push(m); } } public void startHeader() throws MimeException { stack.push(new Header()); } Christophe.
