XDoclet Integration
The XDoclet family ([http://xdoclet.sourceforge.net/xdoclet/index.html XDoclet] and [http://xdoclet.codehaus.org XDoclet2]) are generation engines used for attribute oriented programming. They process meta data (in the form of javadocs tags).
The interest for Betwixt is that java doc tags are a very nice way to mark up mappings.
Design Ideas
As XDoclet developer I would suggest to go for new xdoclet-2 plugin, due to easiness of development and possibility of test coverage. Plugin development for xdoclet-2 is simplier than for old xdoclet 1.2.x
To develop a plugin you will need to chekout [http://www.sourceforge.net/projects/xdoclet-plugins/ xdoclet-plugins] from sourceforge. This is a maven reactor project, and you can easily add new subdirectory and use other plugins as templates. I would suggest to use some of jelly-based plugins as base ( for example plugin-hibernate ) as betwixt plugin vill be producing xml documents.
XDoclet-2 plugins shall compile without any problem ( assumed you got ejb-2.1.jar in your maven repository). After you are done, I'm happy to take your changes and commit them to plugins repository. put 'em into [http://jira.codehaus.org/secure/BrowseProject.jspa?id=10231 JIRA]
Developing plugin & tags
Some quick suggestions to plugin development process.
- Base package shall be form org.xdoclet.plugin.betwixt
- Interfaces decalring tags shall go into: org.xdoclet.plugin.betwixt.qtags
- those interfaces shall be marked up by @qtag.something tags to be really validatable
- do not forget to write tests. support classes are provided, and you can see their usage
- in other modules
Up to [:Betwixt]