[ 
https://issues.apache.org/jira/browse/MIME4J-139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12773397#action_12773397
 ] 

Andrzej Rusin commented on MIME4J-139:
--------------------------------------

@Markus: my friend had very similar problems on JRE 6 Update 16 when he was 
creating our custom Handlers and Fields. 
My target env is still .11, so even if I upgrade on local and it helps, the 
problem will persist in the target env.

@Stefano: I think you are right.

Another hint which may or may not be helpful: I am running on local from inside 
Eclipse, so it may or may not be a classloader problem.

But, if only the fields staticness is consistent, the problem disappears.

> DelegatingFieldParser NPE problem
> ---------------------------------
>
>                 Key: MIME4J-139
>                 URL: https://issues.apache.org/jira/browse/MIME4J-139
>             Project: JAMES Mime4j
>          Issue Type: Bug
>    Affects Versions: 0.6
>         Environment: jre 1.6.11
>            Reporter: Andrzej Rusin
>            Priority: Minor
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> We have custom ContentHandlers that extend AbstractContentHandler and add 
> some custom Fields that extend AbstractField.
> We were getting:
> java.lang.NullPointerException
>  at 
> org.apache.james.mime4j.field.DelegatingFieldParser.parse(DelegatingFieldParser.java:51)
>  at org.apache.james.mime4j.field.AbstractField.parse(AbstractField.java:171)
>  at org.apache.james.mime4j.field.AbstractField.parse(AbstractField.java:63)
>  at 
> org.apache.james.mime4j.message.MessageBuilder.field(MessageBuilder.java:101)
>  at 
> org.apache.james.mime4j.parser.MimeStreamParser.parse(MimeStreamParser.java:121)
>  at org.apache.james.mime4j.message.Message.<init>(Message.java:141)
>  at org.apache.james.mime4j.message.Message.<init>(Message.java:100)
> always AFTER the MimeStreamParser got invoked with our content handlers (so, 
> not on our parsing, but eg. later, on normal 
> new Message(InputStream).
> Looked like we are currupting something inside MimeStreamParser.
> Then I noticed that DelegatingFieldParser.defaultParser is defined as:
> private FieldParser defaultParser = UnstructuredField.PARSER;
> while other field parsers have:
> static final FieldParser PARSER = new FieldParser() {...}
> So I changed DelegatingFieldParser.defaultParser to static final  and the 
> NPEs do not occur anymore.
> I do not undestand exactly why this happens, but that are the facts.
> Is there any reason why DelegatingFieldParser.defaultParser can't be static 
> final?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to