HomeDocumentation > Apache Geronimo Development Process > Contributor process

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.

The Server

Runtime

  • 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.

Security

  • 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

  • Better Caching

J2SE 5 support -

  • Use new ORB

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.

Build System

Maven Build

  • 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 Build

  • Ant versions of the Geronimo Plugins - Jason Dillon

Documentation

  • 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)

Administration

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 -

  • 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 -

  • Little G -

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

Error rendering macro 'jiraissues' : com.atlassian.confluence.macro.MacroExecutionException: java.io.IOException: Error on line 105: The element type "meta" must be terminated by the matching end-tag "</meta>".
Error rendering macro 'jiraissues' : Macro params are invalid