The Apache James Project is happy to announce
the release of version 0.7 of the Apache James Mime4j.
Mime4j is a flexible MIME parsing library written in Java. SAX, DOM and pull parsing styles are
The 0.7 release brings another round of API enhancements, bug fixes and performance optimizations.
A major effort has been put in code reorganization, separating parsing code from DOM manipulation
code. Mime4J has been restructured into three separate modules: 'core', 'dom' and 'storage'.
The 'core' package provides an event-driven SAX style parser that relies on a callback mechanism
to report parsing events such as the start of an entity header the start of a body, etc.
The 'dom' package contains base/abstract classes and interfaces for MIME-DOM manipulation aiming
to provide the base for a full featured traversable DOM. Per default the Mime4J DOM builder stores
content of individual body parts in memory. The 'storage' package provides support for more
complex storage backends such on-disk storage systems, overflow on max limit, or encrypted storage
through JSSE API.
Mime4j 0.7 improves support for headless messages, malformed separation between headers and body
and adds support for "obsolete" rfc822 syntax (e.g: "Header
performance for quoted printable streams have been considerably improved. A "DecodeMonitor" object
has been introduced in most code to define how to deal with malformed input (Lenient vs Strict
behaviours). Mime4j 0.7 also provides LenientFieldParser as an alternative to DefaultFieldParser
when a higher degree of tolerance to non-severe MIME field format violations is desired.
Download from http://james.apache.org/download.cgi#Apache_Mime4J