Rob,

You'll need to refresh your view - I have made a few changes, including quickly hacked up support for one-level of nested packed jars:

foo.spr/
   META-INF/spring.xml
   foo/Foo.class
   bar.jar
       bar/Bar.class
   ...

This is useful as you can just throw any jars that your Spring app uses into the spr, jar it all up and drop it into Geronimo :-)

Re patching, there is an svn diff (I think), for the moment, just send me patches and I'll commit them. If things go well and you need further access we can work on persuading the powers that be to let you in...

Jules

Rob Harrop wrote:

What is the preferred mechanism for contributing this code? Should Jules check it all in. I'm not that familiar with SVN - can I create a patch like with CVS?

Rob

Rob Harrop wrote:

Jules,

This is great stuff - I'm just downloading everything here at work and I will start to look at the Spring side of things - specifically satisfying dependencies using the beans that are deployed in Geronimo.

Regards,

Rob

Jules Gosnell wrote:


I have just checked in the beginnings of a SpringDeployer (revision 128446).


This requires an updated version of Spring (1.1.3). So, if you tend to
run your builds offline, you will need to hook up and let maven sort
it all out.

A Spring deployable currently looks like this - e.g. :

foo.spr/
   META-INF/spring.xml
   Foo.class
   Bar.class
   ...

Classes should be deployed unpacked at the top level of the jar :

You should run the org/apache/geronimo/SpringDeployer configuration in
your server to use this functionality.

The org/apache/geronimo/DebugConsole will be useful to look at GBeans
that represent your Spring apps.

e.g.

[EMAIL PROTECTED] cvs]$ java -jar geronimo/modules/assembly/target/geronimo-1.0-SNAPSHOT/bin/deployer.jar --user system --password manager deploy foo.spr
Deployed
[EMAIL PROTECTED] cvs]$ java -jar geronimo/modules/assembly/target/geronimo-1.0-SNAPSHOT/bin/deployer.jar --user system --password manager undeploy /tmp/deployer34206.tmpdir/foo.spr
Undeployed /tmp/deployer34206.tmpdir/foo.spr
[EMAIL PROTECTED] cvs]$


output from server :

23:39:45,704 INFO [Daemon] Server startup completed
PLANNING: /tmp/deployer34206.tmpdir/foo.spr
BUILDING: /tmp/deployer34206.tmpdir/foo.spr
23:40:23,556 INFO [XmlBeanDefinitionReader] Loading XML bean definitions from class path resource [META-INF/spring.xml]
23:40:23,679 INFO [LocalConfigStore:config-store] Installed configuration /tmp/deployer34206.tmpdir/foo.spr in location 16
23:40:23,730 INFO [ConfigurationManagerImpl] Loaded Configuration geronimo.config:name="/tmp/deployer34206.tmpdir/foo.spr"
23:40:23,733 INFO [Configuration] Started configuration /tmp/deployer34206.tmpdir/foo.spr
23:40:38,787 INFO [Container] Started HttpContext[/,/]
23:41:36,069 INFO [Configuration] Stopping configuration /tmp/deployer34206.tmpdir/foo.spr
23:41:36,078 INFO [ConfigurationManagerImpl] Unloaded Configuration geronimo.config:name="/tmp/deployer34206.tmpdir/foo.spr"
23:41:36,083 INFO [LocalConfigStore:config-store] Uninstalled configuration /tmp/deployer34206.tmpdir/foo.spr



Functionality is rudimentary at the moment.

Only one GBean is created per Spring app.

We hope to add the following functionality soon :

1. Support for a META-INF/geronimo-spring.xml (internally or
externally) - this will be used to provide platform specific deploy
time metadata.

2. The possibility of exposing individual Spring generated beans as
GBeans in the Geronimo kernel with all attendant benefits -
management, monitoring and persistent configuration.

3. Transparent injection of platform hosted resources into Spring apps
- allowing seemless hookup between Spring composed apps running in
different containers within Geronimo.

4. Support for nested jars within the .spr.

5. Anything else that looks useful - please join this thread with your
ideas.


The code is in modules/spring-builder if you want to take a look.

If anyone can figure out how to move the Spring-related stuff out of
the j2ee-runtime-deployer-plan.xml and back into the
spring-deployer-plan.xml without losing the deployer they will have my
undying gratitude - I ran out of steam - maybe tomorrow :-)

We will be working closely with the Spring team on this integration. We
hope that both Geronimo and Spring will benefit substantially from
this.

Enjoy,

Jules





--
"Open Source is a self-assembling organism. You dangle a piece of
string into a super-saturated solution and a whole operating-system
crystallises out around it."

/**********************************
* Jules Gosnell
* Partner
* Core Developers Network (Europe)
*
*    www.coredevelopers.net
*
* Open Source Training & Support.
**********************************/



Reply via email to