You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mime4j-dev@james.apache.org by "Markus Wiederkehr (JIRA)" <mi...@james.apache.org> on 2009/11/15 21:17:39 UTC
[jira] Resolved: (MIME4J-139) DelegatingFieldParser NPE problem
[ https://issues.apache.org/jira/browse/MIME4J-139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Markus Wiederkehr resolved MIME4J-139.
--------------------------------------
Resolution: Fixed
Fix Version/s: 0.7
Assignee: Markus Wiederkehr
Changed defaultParser into a private static final variable; this should resolve the issue.
> 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
> Assignee: Markus Wiederkehr
> Priority: Minor
> Fix For: 0.7
>
> 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.