One option would be to distribute the service as a plugin.
The initial process is the same in any case:
- Implement the GBean
- Create the plan (geronimo-service.xml) with any necessary dependencies
- Package the GBean class(es) and optionally the plan into a JAR
- Deploy the JAR to Geronimo as a new module
From there, the process is a little different for plugins:
- Using the console, create the plugin metadata file for the new module
- Create a Maven 2 build with two modules -- one for the service as
above, and one to create a plugin CAR out of the service JAR using the
car-maven-plugin and the plugin metadata file above
- Make sure all the dependencies are in a Maven 2 repository,
referenced in the plugin metadata file
- Test the plugin install on a clean Geronimo build
That avoids needing to integrate the service into the assemblies
directly. Bruce and I are working through building a new plugin for
our talk at ApacheCon on Friday -- you can see the work in progress at
https://svn.apache.org/repos/asf/geronimo/plugins/spring/trunk
Thanks,
Aaron
On 10/11/06, Tim McConnell <[EMAIL PROTECTED]> wrote:
I'm trying to figure out all the steps necessary to integrate a new
component/service into Geronimo. Do these high-level
tasks below seem generally accurate ?? And most importantly what else am I
missing ?? Thanks much for reviewing. Tim
1. Implement a GBean to represent the deployed component with
appropriate:
a. Constructor
b. Attributes
c. References
d. Operations
e. Interfaces
2. Create the XML Plan with the appropriate deployment descriptors
3. Create the appropriate configuration file(s)
4. Implement a Module to contain the GBean
5. Implement the class loader for the Module
6. Create/implement any/all appropriate dependencies
7. Create the POM XML file(s) for integration into existing maven build
8. Test all assemblies (that contain the new component/service)
9. Others ??