Geronimo XDoclet 1.2.2 module contribution
------------------------------------------

         Key: GERONIMO-778
         URL: http://issues.apache.org/jira/browse/GERONIMO-778
     Project: Geronimo
        Type: New Feature
    Reporter: John Sisson
    Priority: Minor
 Attachments: geronimo-xdoclet.zip

In December 2004 I did done some work on XDoclet 1.2.2 support for Geronimo but 
did not get around to contributing it.  Currently it supports the generation of 
the openejb-jar.xml file for session and message-driven beans.

See the following mail thread for discussion on this contribution.

http://marc.theaimsgroup.com/?t=112002458700001&r=1&w=2

Note that there are a number of issues discussed below that need to be resolved 
before this is ready to be included with Geronimo releases.  In other words, it 
isn't complete :-).

How to build
===========

1. Download the appropriate (zip/tar) xdoclet-src-1.2.2 file from 
http://sourceforge.net/project/showfiles.php?group_id=31602:

2. Extract the xdoclet-src-1.2.2-* file you downloaded

3. Copy the geronimo directory (in the attached zip file) to the 
xdoclet-1.2.2\modules directory

4. Build the XDoclet code by running ant ( ant 1.5 works, later versions get an 
error) in the xdoclet-1.2.2 directory.  After the build has completed  the 
xdoclet-1.2.2\target\lib directory should contain 
xdoclet-geronimo-module-1.2.2.jar .

5. Generate the html documentation (it will be placed in the 
xdoclet-1.2.2\target\docs directory) by issuing the command "maven 
site:generate" in the xdoclet-1.2.2 directory.  After the documentation has 
been generated you should be able to see the documentation for the geronimo 
XDoclet tags in the file xdoclet-1.2.2/target/docs/tags/geronimo-tags.html . 
Note that a link to the geronimo tags is not added to the main XDoclet page ( 
xdoclet-1.2.2/target/docs/index.html ) so it seems the link has to be added 
manually.

Issues to discuss
==============
* how to integrate into Geronimo build.  Currently to build the Geronimo 
XDoclet module, it requires the XDoclet source code to be available.  It may be 
possible to write some ant/maven build files that can build the geronimo 
XDoclet module without requiring the Xdoclet source code download (although I 
haven't seen any other projects build an XDoclet module this way yet).
* create test application utilising the geronimo XDoclet tags
* currently the configId attribute must be specified in the ant file when 
invoking the geronimo subtask.  The configId value is placed in the generated 
plan.  The parentId attribute can also be optionally specified.  Is this the 
best way? See documentation in the file 
xdoclet-1.2.2/target/docs/ant/xdoclet/modules/geronimo/ejb/GeronimoSubTask.html 
.
* the tag parameter names match the xml element names in the deployment plan, 
but for the parameters used to specify portions of jsr-77 object names (e.g. 
domain, server, application, module, ..), I have prefixed the parameter with 
objname- to make it clearer that they are part of a group.  
*Should the parameter names (e.g. the ref-name parameter of the 
@geronimo.resource-ref tag) should be more consistent with the parameters of 
the @ejb tags (e.g. the res-refname parameter of the @ejb.resource-ref tag).  
* Should we be trying to have unique parameter names so that it is easier to 
search for the particular parameter.  For example, currently the ref-name 
parameter is used on the @geronimo.ejb-local-ref , @geronimo.ejb-ref and 
@geronimo.resource-ref tags.  If we do change the parameter names to be unique 
it will mean the parameter names will no longer match the generated XML element 
names (this may make troubleshooting generated XML harder).

Further work to be done
====================
the following contributions/help by others are welcome :-) :
- Improvements to the tag documentation ( 
xdoclet-1.2.2/target/docs/tags/geronimo-tags.html )
- web support
- web services support
- entity beans support
- GBeans support
- Corba support
- Testing with Eclipse WTP and other IDEs

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to