How to get involved
The Apache Geronimo project was built by the open source community for the open source community - we welcome your input and contributions!
What we are looking for:
- Source code and fixes contributions
- Documentation assistance
- Product and feature suggestions
- Detailed and constructive feedback
- Articles and whitepapers
How do I Contribute?
Roadmap - where do I fit?
This is a list of evolving ideas that will become features in the next version of Geronimo. The ideas are listed along with their originator(s). You are welcome to add your ideas here and/or at Jira issues. Be sure to discuss them first at developers list or at IRC. âˆš means that this functionality is required for spec compliance.
- Support for the multiple-protocols-over-one-port network listener
- Global non-persistent JNDI implementation - Aaron Mulder
- A JDBC network wrapper allowing a remote client to access a JDBC pool running in the server (WebLogic and OC4J may have this).
Thread Pools - Aaron Mulder
- Consolidate all thread usage into a group of manageable thread pools. e.g. pools for WorkManager, network listeners and monitors (e.g. hot deploy directory monitor).
- Make Web, EJB containers use external thread pools.
- Integration with Other Security Servers -
- http://jpam.sourceforge.net David Jenks, Jeff Genender
- http://acegisecurity.org/ James Strachen
The integration will be at two levels -
Authorization based on subject/principal supplied by the security server
Delegate the authorization decisions to the security server.
- Built-in simple user management apis and a console plugin that covers the 80% of use cases, username/password + groups, with the ability to add, remove, modify and suspend accounts.
- Intelligent Keystore Service - Aaron Mulder
Provide a more intelligent Keystore service that tracks available keystore(s) and can issue SocketFactories (or the NIO or J2SE 5 equivalent) preconfigured with the certificates it needs.
- Plugins for popular third-party app server add-on products like (for security) RSA, Tivoli AM, Netegrity. Aaron Mulder
Hot Deployment - Sachin Patel
- Run off exploded directories
Multiple server Instance Support -
- Support for running more than one instance of Geronimo out of the same installation (multiple /var directories, perhaps with one parent
ConfigStore in the main installation for the core code and one child ConfigStore in each /var for the individual instances).
JSR -77 - Aaron Mulder
- âˆš JSR-77 statistics support for most of the server
EJB 2.x - Dain Sundstrom
J2SE 5 support -
JEE 5 -
- JSR 175 based annotations - Sachin Patel
Deployment and Configuration
JSR-88 Support - Aaron Mulder
- A standalone JSR-88 JAR (meaning, it actually includes all the other modules' code it needs in its own JAR).
- Complete JSR-88 DConfigBean support (presently we have only connectors, and not much of the GUI support for them at that). Sachin Patel
- A configuration option that would prevent an application from seeing resources, EJBs, etc. in any other application (e.g. only stuff in itself or top-level in the server).
- Full XDoclet and Ant support.
Web Services - Aaron Mulder, Erik Daughtrey
- Provide an option for Stateless Session Bean web services to auto-generate WSDL, JAX-RPC mapping file, and webservices.xml.
- provide a command-line tool to generate these.
- Conversion to Maven 2 - Jason Dillon
- Publishing various artifacts - Prasad Kashyap
- Publishing the drivers/binaries from the daily builds.
- Testing - Aaron Mulder
- Integration tests that cover servlets, webservices and jms
- An organized effort to create test CMP EJBs with all possible data types (including BLOBs, CLOBs, etc.), and then run some create/update/search/delete tests against that on every database we can lay our hands on, and provide a clear list of which database products should use which syntax factories and which exception handlers and so on.
- Automated performance tests and tracking the results - Sachin Patel
- Trending information for other tests in addition to performance tests, e.g. code coverage, cts ,unit tests etc.
- Installer - Eric Daughtrey
- Ant versions of the Geronimo Plugins - Jason Dillon
- Documentation - Hernan Cunico
- User Guide and Developer's Guide - for each major release.
Application Development and Migration
- Incremental Update - Dave Colasurdo
Provide a mechanism that allows users to apply fixes from a "dot" release to an existing binary installation (e.g. apply 2.0.1 fixes (jars) to an existing 2.0 installation)
- Migration - Dave Colasurdo
Provide a mechanism to migrate applications and configurations to a later release (e.g. user upgrade from 1.0 -> 2.0)
Console - Aaron Mulder, Joe Bohn
- Remove embedded Pluto Portal Server in console, provide external dependency for "a Portal".
- Pluggable console component structure so that the admin functions are only included if the managed component is included in the assembly (ex. only include EJB management if an EJB container is included).
- Role based authorization for individual console activities (not just one size fits all).
- Clean up admin portlets for programming best practices.
- Extend console to keep up with new features (mgmt. of Portal Appls., clusters, etc...)
- Web Console configuration for clustered environment (one console with remote management?)
- Greater use of AJAX for more interactive admin on the console.
- Performance monitoring and management
- Application Response monitoring - Alan D. Cabrera
Integration with Third Party Software
- IDE Integration -
- All others -
- Integration with Pluto Simple Portal
- Integration with Jetspeed 2 - David Jenks, Jian Liao
- Integration with James, Roller, OfBiz, Jira, drools - David Jenks
Custom Servers -
Sub Projects -
- Devtools - Sachin Patel
- Better tooling/runtime integration (GERONIMO-1526)
- XDoc integration into tools (hook into WTP content assist)
- Full UI editors/wizards pages for deployment plans
Geronimo V1.0 Unassigned defects
JIRA Issues Macro: Unable to locate JIRA server for this macro. It may be due to Application Link configuration.
JIRA Issues Macro: Macro params are invalid