Dozer is a Java Bean to Java Bean mapper that recursively copies data from one object to another. Typically, these Java Beans will be of different complex types.
Dozer supports simple property mapping, complex type mapping, bi-directional mapping, implicit-explicit mapping, as well as recursive mapping. This includes mapping collection attributes that also need mapping at the element level.
Please read the about page for detailed information on Dozer.
Release 5.5.1 is available for download and should appear in Maven Central shortly. Project has migrated to bintray for hosting binary releases and as an alternative repository location. Check release notes for the list of issues closed.
Release 5.4.0 is available for download. This is the first release after moving project to GitHub and already few new contributors have joined.
For discussions about new features post here Google Group. For technical questions use StackOverflow All issue tracking will be done here GitHub Old SourceForge Forums and Issue tracker will not be active anymore. They will be disabled once migration is finished.
After some inactivity period Dozer has finally moved to GitHub. Source code will be maintained there from now on. This transition is a huge step forward for the project as the barrier for contribution is significantly lower on GitHub compared to SourceForge. It is really easy to create a Pull request and merge it afterwards. Transition of the issue trackers and support forums will be performed as well. We are looking forward to accept contributions from developers in forms of patches and help on migration to GitHub. Write to buzdin at gmail if you are interested.
Release 5.4.0 is currently in development and will be released this summer.
Release 5.3.2 is available for download. This is maintenance release, which finalizes internal builder API implementation and delivers several bugfixes. Experimental annotations support for simple mappings has been added.
Additionally, thanks to Lenkwe Makhubela, Dozer Eclipse plugin is finally working on Eclipse 3.6.
Refer to release notes for detailed information.
Release 5.3.1 is available for download. This is maintenance release bringing compatibility with Apache Camel framework and fixing a few bugs found in 5.3.0. Upgrade is highly recommended for 5.3.0 users.
Release 5.3.0 is available for download. This release brings several major changes to Dozer. First is migration to SLF4J logging framework. Second is introduction of alternative way of providing custom mappings via Java API. In the meanwhile we reached 50000 downloads from the website. This is excluding Maven repository.
Refer to release notes for detailed information.
Release 5.2.2 is available for download. This is a maintenance release fixing several issues. Upgrade is recommended for all 5.x.x users.
Thanks to everyone contributing for this release!
Please check release notes for more information.
Release 5.2.1 is available for download. Important new features are Dozer OSGi bundle and Expression Language support. Several bugs has been fixed as well. Upgrade is recommended for all 5.x.x users.
Thanks to everyone contributing for this release!
Please check release notes for more information.
Dozer team is happy to announce release 5.2.0. This version fixes fourteen bugs of different kind and provides several new features, such as referencing current mapper object inside a custom converter. Upgrade is recommended for all 5.x.x users.
Thanks to everyone contributing for this release!
Please check release notes for more information.
This is a maintenance release addressing more than a dozen bugs. Upgrade is recommended for everyone using 5.0 version. Several nasty bugs in area of processing complex type hierarchies have been fixed. The most valuable addition to this version is a new custom converter API, which supports Generics.
Thanks to everyone contributing patches and ideas for this release!
Please check release notes for more information.
This is the first release with a fully featured GUI around the Mapping XML.
Features are:
Thanks to Angelo Zerr who wrote the
DOM/SSE Databinding
that the Plugin uses.
Please check here for more information.
installation
usage
This release contains changes that are not backwards compatible with prior versions of Dozer. There is a 5.0 migration guide in the release notes section, which outlines these changes.
Key 5.0 changes:
Thanks to everyone that helped out with this release and submitted tickets. Please let us know if you find any issues with the release and we will do our best to fix them soon as possible.
Please check here for more information and the 5.0 migration guide. release notes
This release fixes classloading issues for custom ClassLoaders. These classloading issues were introduced in the 4.3 release.
Please check here for more release notes
This release contains various bug fixes and feature requests.
Thanks to everyone that submitted bugs and contributed to the release.
Please check here for more release notes
This is a maintenance release targeting mostly bug fixes. Note that this release changes classloading behaviour. If you are experiencing classloading problems in any application container, please tell us urgently.
Thanks to our contributors for submitted bug reports and patches, which helped greatly during this release development.
Contributors to the project are more than welcome as usual!
Please check release notes for detailed information.
This minor release contains a fix for the stop-on-error bug.
Please check here for more release notes
This release contains various bug fixes.
Thanks to everyone that submitted bugs and contributed to the release.
Please check here for more release notes
This release contains bug fixes and feature requests, along with internal refactoring.
Thanks again to everyone that submitted bug and feature requests, along with everyone that contributed to the release.
Please check here for more release notes
This release contains bug fixes and feature requests, along with internal refactoring. Some new features include indexed mapping within deep mapping, improved support of Map backed properties, and configuration of auto string trimming.
The most significant refactoring was around Map backed properties. The refactoring did not change the public Dozer API or the xml dtd, but if you are currently using the Map backed property features of Dozer please thoroughly regression test your system after upgrading to 4.0 to verify that any expected behavior remains unchanged for your specific use cases. We do have a good amount of unit tests around the Map backed property feature, but please let us know if you experience any issues after upgrading and we will do everything we can to resolve it soon as possible.
Thanks again to everyone that submitted bug and feature requests, along with everyone that contributed to the release.
Please check here for more release notes
We released dozer around 2 years ago and never expected this many downloads for such a niche framework. Thanks to the community for contributing and using our tool. Let's hope for 10,000 more downloads!
This release contains bug fixes and feature requests.
Please check here for more release notes
This release contains improvements to non-cumulative mapping, enhancements to the logic that auto discovers default field mappings, bug fixes, and feature requests.
Please check here for more release notes
The Dozer project recently eclipsed the 1 million hit mark. Thanks everyone! It's been fun.
This small release contains feature requests for Boolean to Number auto conversion, custom converter statistics, and a small performance improvement for jdk1.5 users.
Please check here for more release notes
This minor release contains bug fixes and feature requests.
Please check here for more release notes
Thanks to everyone that has submitted new bug and feature requests over the last month.
This release contains support for Java 1.5 generics (you no longer need to give hints for typed collections!), enums, performance improvements, bug fixes, feature requests, and a move to subversion. This release will also be hosted in the Maven 2 Repository.
Thanks again to everyone submitted bug and feature requests, along with everyone that contributed to the release.
Please check here for more release notes
This release contains infrastructure upgrades, bug fixes, feature requests, and some performance improvements.
One thing to note is Custom Converters are now invoked if the src value is null, so just make sure any Custom Converters you have created explicitly handle a null source value.
Thanks again to everyone submitted bug and feature requests, along with everyone that contributed to the release.
Please check here for more release notes
This release contains bug fixes and feature requests. One thing to note is that with this release RuntimeExceptions will no longer be wrapped in a MappingException. Thanks to everyone submitted bugs/feature requests and contributed to the release.
Please check here for more release notes
We are back after taking some time to enjoy the unlimited summer activities in the Rockies. This release focuses on bug fixes, feature requests, and general cleanup/refactoring of the code base. Thanks to everyone that contributed to the release!
Please check here for more release notes
This release includes runtime statistics support, JMX integration, event listening model, dozer configuration through a properties file, XMLBeans mapping, and a few other things. There is also a few bug fixes.
Please check here for more release notes
This release includes indexed mapping support, bi-directional self mapping and much more. There is also a few bug fixes.
Thank you Kiersztyn Wojtek and Peciuch Dominic for your index based mapping code contribution!
Please check here for more release notes
This release had a few new features and a few bug fixes.
Please check here for more release notes
This release was mainly performance based. We have seen a 400% - 800% increase in mapping performance. Check here for our profiling notes .
Please check here for more release notes
Removed dependency on Castor. We also added a few more features.
Please check here for release notes
Dozer now supports map-backed properties. This is extremely useful for mapping objects to/from many UI frameworks. The next release of Dozer will focus purely on performance enhancements.
Please check here for release notes
Please check here for release notes
Dozer is mentioned as a great way to map objects between application layers in the October issue of the JDJ