Getting 2.0.1 out the door was a great step and now might be a good time to start discussing where we want geronimo to head next. Here are some ideas I've had or think are important. If I were to try to write actual sentences about all of this I'd probably never send the email so this is way too fragmentary but maybe can spark more discussion. I'm hoping everyone will chime in with their interests and viewpoints, this is just what I've been thinking about lately.

Modularity.

For a long time we've been on the brink of having an actually modular server, not just a conceptually modular server. As reflected in a lot of recent discussion on the dev list, I think we are so close we should really work hard to make this a pleasant reality. Some of the steps I see: - enhance the plugin framework so bits of more config files can be added, in particular artifact_aliases.properties and config_substitutions.properties. IIUC Paul has some schema changes and xml handling rewrites in the wings as well - finish up the pluggable admin console work and actually split the admin console into appropriate bits for the plugins
- rearrange the build so it is organized by plugin
- actually assemble the servers we ship using plugins, perhaps using gshell scripts - have more server-building tools. For instance, a "button" to push that spits out a server with just what is needed for a set of apps and nothing else.

Clustering

IIUC we have a lot of partial clustering solutions. For instance there's WADI, native tomcat clustering, a terracotta integration, and IIUC Jeff has been working on a clustering solution (my apologies if I left any out). I'd like to know where these efforts are in terms of actual functionality and reliability and what they can be extended to do. We also need some kind of cluster admin tools.

Security
jaspi
triplesec
administration
beyond javaee security for jetspeed and roller
There are some good things about javaee security such as the idea of using Permissions and evaluating them in a policy but there are also a lot of limitations and problems such as no support for restricting access to user generated content that didn't exist when the security was originally configured. At least roller and jetspeed have run into this problem. I think triplesec may provide a fairly generic solution and it might be interesting to see if other projects are interested in this.

Other apps
roller
jetspeed
proximity etc
It would be great to get "all popular apps" available as geronimo plugins.

Management and troubleshooting
ARM
"trace on error" facility. Have a list of info that each component can add to as the request moves through the system. If there's an error, we can show the entire path taken with all data. Otherwise we discared it.
server farm management (gshell?)

Transaction manager
implement a "do work in a new tx" interface, hook it up to openjpa. IIUC IBM has proposed an interface that lets server pieces submit work to be done in a new transaction, thus eliminating the need to deal with suspend etc yourself. There's been some discussion on the openjpa lists, and we should definitely do this. There may be more commonj work to do also, but I've more or less lost track of that project.
make sure recovery actually works

Core
Better Spring application management
Investigate OSGI and figure out how it is different from what we are doing, what it can do better, and what is missing from it. Figure out an integration strategy whether it be "run OSGI as an application" or "replace the kernel with OSGI" Don't break stuff if we start using OSGI more :-) Figure out what to do with our "config.ser" in modules/ configurations. At least get it into real xml, maybe using something like jaxb with schema/gbean.


Personally I'm interested in most of these projects but only have a finite amount of time. Right now I'm concentrating on triplesec and want to work on jetspeed integration after that.

thanks
david jencks


Reply via email to