Rob Harrop wrote:
Is there a test :)?
errr... ehemmm...
I'll send you a really simple .spr that I have cobbled up, but as yet there is no testsuite - I couldn't face digressing from getting a working deployer long enough to grok how to set up and check in a test - It is on my list.
smacked wrist ? :-)
Jules
Jules Gosnell wrote:
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. **********************************/
