geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jules Gosnell <ju...@coredevelopers.net>
Subject Re: What's the status of Geronimo Spring integration?
Date Mon, 21 Feb 2005 17:44:21 GMT
Bruce Snyder wrote:

>I'm curious to know the status of the Geronimo Spring integration. The
>last message I see is from Jeremy who was looking into an upgrade of
>cglib to support the work that Jules is doing. Has there been any
>progress beyond this to date? Jules, do you need any help with this
>integration?
>
>Bruce 
>  
>
Bruce,

Thanks to Jacek's moving us to cglib 2.0.2, I have just checked back in 
my updates to the spring module.

The current state of play is that the spring deployer defines a new 
module type: '.spr' (I suggest a pronunciation of SPAR - SPring ARchive).

A .spr can contain classes and (one level of nested) jars in its root 
dir, along with a spring.xml in its META-INF dir.

The spring deployer sets up a SpringGBean along with the relevant parts 
of the original .spr to be loaded at runtime. Note that we are currently 
constrained into pushing pretty much all of Spring's runtime complexity 
into the Geronimo runtime, although it would obviously be much better to 
do a large amount of this work at deploy time.

The spring module defines a SpringGBean, which when loaded, configured 
and started, will pass the META-INF/spring.xml to Spring, then take each 
resulting Spring-managed bean and using a subset of its complete API 
(just obvious properties), create an interface and from this a proxy 
class that can be loaded into the kernel as another GBean. The kernel 
creates an instance of the proxy class and the SpringGBean injects this 
with an invocationHandler which delegates all activity to the 
Spring-managed bean in question. Thus Spring POJOs are made to appear 
seamlessly integrated with Geronimo.

There is much more to be done, but what is currently there should allow 
you to deploy simple Spring apps (how simple I'm not yet sure - my test 
app is VERY simple:-) ) and then find the corresponding GBeans in the 
debug-tool.

I am running the server with the following config :

 org/apache/geronimo/SpringRuntime
 org/apache/geronimo/SpringDeployer
 org/apache/geronimo/DebugConsole

I'd be very interested in any feedback that the list might have, and 
will keep posting as we add new functionality.

Cheers,


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.
 **********************************/


Mime
View raw message