dev@jaxb2-commons.java.net

jaxb2-commons property-listener-injector bugfixes

From: Matthew Wise <mwise_at_mango-solutions.com>
Date: Wed, 20 Feb 2013 09:44:08 +0000

Hi,

I've been using the maven-jaxb2-plugin to generate domain object classes from an XSD. These domain objects are then to be populated with data from XSD-compliant XML files and bound to Java desktop GUI widgets for editing, with the user's changes written back out to XML. I would have thought that this would be a not-uncommon requirement. As it stands, the behaviour of the plugin is not sufficient, since I need property-change events to be fired in the setter methods. (Or should I be using annotations and aspects perhaps?).

The org.jvnet.jaxb2-commons property-listener-injector sounded like it would do the trick; however it has a couple of bugs that are show-stoppers for my company's project:
- firePropertyChange needs to occur after the value is set, not before
- firePropertyChange is not injected for primitive properties
- Also field modifiers should be private rather than protected surely, although this isn't a problem as such

Development of the property-listener-injector plugin seems to have stalled at version 1.1-SNAPSHOT, 6 years ago. I've spent a good day or more on Google trying to find a later/fixed version, or find out if another JAXB tool/plugin has superseded the above, but I can't find anything obvious. This site http://java.net/projects/jaxb2-commons/pages/Home seems to be the most up-to-date but the property listener plugin is listed as Dormant.

I found the sources for the 1.1-SNAPSHOT version at http://download.java.net/maven/2/org/jvnet/jaxb2-commons/property-listener-injector/1.1-SNAPSHOT/ and have fixed the bugs locally, as well as fixing the POM and directory structure, but I would like to contribute this back to the community, to try and avoid anyone else with my requirements in the future having to go through the same pain as me. Is this the right forum to do so? Or can someone suggest a better way to accomplish what I need to do?

Regards,

Matthew Wise
Mango Business Solutions, UK



--
LEGAL NOTICE
This message is intended for the use of the named recipient(s) only and may contain
confidential and / or privileged information. If you are not the intended recipient, please
contact the sender and delete this message. Any unauthorised use of the information
contained in this message is prohibited.
Mango Business Solutions Limited is registered in England under No. 4560258 with its
registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF,
UK.
PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL