I think it's a really, really good Idea. I think it would make a clear different compared to other J2EE impls. +1 (just to make it clear :) )
-- Matt Kurjanowicz [EMAIL PROTECTED] -----Original Message----- From: James Strachan [mailto:[EMAIL PROTECTED] Sent: Saturday, November 15, 2003 12:52 AM To: [EMAIL PROTECTED] Subject: Universal Geronimo Service Repository In enterprise computing there's no such thing as one size fits all. We're gonna have all kinds of different implementations of different services; whether its servlet engines (tomcat, jetty), ejb containers (openejb, jonas), transaction managers (tyrex, jotm), jms providers (openjms, joram, commercial vendors) etc. Already Geronimo can deploy any-old-service from a deployment unit or URI etc. Of course we need to put in place some good hooks to efficiently wire together dependent services when close integration is desirable, but conceptually, we should be able to just deploy any-old-service at runtime and things just-work. So here's a thought for folks (we can talk more about it at ApacheCon if you like). Why don't we put together a J2EE service repository. Think Maven jar repository but for Geronimo deployment units - all ready to run. Then for a given Geronimo version (based on its kernel & core hooks etc), we could have a repository of all the j2ee services available that the user can easily install. Then via a GUI or web app or config file or command line tool or whatever, the user could choose which services they wish to have in their own custom Geronimo installation - then hey presto Geronimo could download & install locally each deployment unit. i.e. using Maven's idea of remote repositories and local repositories & downloading new version as required etc. This would allow users to tailor their geronimo deployment to their exact requirements. This would allow any open source project or commercial vendor to easily plugin to Geronimo in a well known, well documented and well tested way. e.g. we could have (eval versions) of every commercial JMS provider all packaged up as a Geronimo deployment unit. Ditto for servlets, EJB, JTA, JCA, WS etc. Developers who don't need parts of J2EE could easily strip stuff out (e.g. if you're just doing web apps & don't use EJB but need some JMS or WS or JCA or whatnot). Commercial vendors could use this mechanism to create custom Geronimo deployments with all of their products cleanly integrated. Folks could then easily do unit / system testing of different combinations of J2EE services. How's this sound? Already much of the mechanics of this is already available in Geronimo, its more a question of figuring out what layout we should use for the repository & making some little tools to help folks pick-and-choose and validate combinations of services etc. e.g. it'd be nice to format the repository in such a way so that deployment units can describe which version(s) of Geronimo they work with so that only known-to-work versions of things are available in the repository for a user's geronimo install. Also checking inter-service dependencies too like you use (say) a JMS 1.0.x provider, then you can't use a certain other service which depends on JMS 1.1 etc. I think this would be really cool. Thoughts? James ------- http://radio.weblogs.com/0112098/
