genorimo MimeMessage extensibility internal behaviour vs sun implementation OOM
issue.
--------------------------------------------------------------------------------------
Key: GERONIMO-4129
URL: https://issues.apache.org/jira/browse/GERONIMO-4129
Project: Geronimo
Issue Type: Bug
Security Level: public (Regular issues)
Components: mail
Affects Versions: 2.1.1
Reporter: Stefano Bagnara
Assignee: Rick McGuire
Priority: Minor
In Apache JAMES we use a MimeMessageWrapper class that is an extension for
MimeMessage providing some sort of lazy loading for streams coming from files
and db records. To do that we work with protected and public fields/methods
from MimeMessage.
Even the most simple test is current running OOM during the parse().
In order to run the tests you will need the following files:
http://svn.apache.org/repos/asf/james/server/trunk/core-library/src/main/java/org/apache/james/core/MimeMessageWrapper.java
http://svn.apache.org/repos/asf/james/server/trunk/core-library/src/main/java/org/apache/james/util/InternetPrintWriter.java
http://svn.apache.org/repos/asf/james/server/trunk/core-library/src/main/java/org/apache/james/util/io/IOUtil.java
http://svn.apache.org/repos/asf/james/server/trunk/phoenix-deployment/src/test/org/apache/james/core/MimeMessageWrapperTest.java
This code also uses Disposable and ContainerUtils from avalon: they are simply
a marker interface for the dispose() method and ContainerUtils.dispose() is a
method to call dispose only if the object is Disposable.
if you don't care of unclosed resources you can remove Disposable and the
ContainerUtils. calls.
RFC2822Headers from mailets is instead a constants collection for rfc headers:
you can safely replace that with literals.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.