Patrick Linskey (plinskey at bea dot com) and Eddie O'Neil (ekoneil at apache dot org)
Open JPA will be an ASL-licensed implementation of the Java Persistence API (JPA) which is defined as part of JSR-220.
We think that Open JPA is something that will benefit from wide collaboration, being able to build a community of developers and committers that outlive the founders, and that will be embraced by other Apache efforts, such as the Geronimo project as part of an EJB 3.0 container. Given the existing momentum forming behind JPA even at this early stage, we are confident that an industrial-grade ASL implementation of JSR220 will attract a diverse community.
The Open JPA committers recognize the desirability of building software as a meritocracy and look forward to growing a healthy community of developers to enhance the JPA APIs.
The proposed committer community is includes members of the BEA JPA team and several individuals from the Apache community.
Fourteen of the initial committers are BEA employees. One of those is a committer on the Apache JDO project. We anticipate that five of these fourteen will be involved in the core code development, and the other nine will be involved in documentation and ongoing QA for the project.
Three of the initial committers are committers on the Geronimo project. Two are IBM employees involved in the WebSphere product team. One is from Intel.
Open JPA will be a candidate for use in Geronimo as the default JPA implementation. Other projects that have general-purpose JPA needs may be users of the Open JPA project.
Open JPA has some level of alignment with the Apache DB project. In particular, the Open JPA codebase already includes support for Derby databases.
JPA is for use in any Java application, not just J2EE. Therefore, any application that needs to do data persistence in the object/relational style (including any application that currently uses Hibernate) will benefit from Open JPA.
The existing codebase is owned by BEA and is subject to a proprietary license. The applicable code will be relicensed under the Apache Software License 2.0.
Avoiding the Warning Signs
Open JPA is a derivative of the basis of the BEA WebLogic Server (WLS) EJB3 JPA implementation, and so is an important piece of the BEA code base.
As this is a very eagerly anticipated specification for the Java community, we expect that this project will continue to grow and develop within its own community, and be embraced by other open source projects (such as Geronimo) as well.
Inexperience with open source
The authors of the existing code (who will be part of the initial committer list) have experience with open source development already, in both professional and personal contexts. Examples: serp (http://serp.sourceforge.net) (used in Kodo currently), sqlline and jline (http://sqlline.sourceforge.net and http://jline.sourceforge.net) (used by the Kodo development team, and used by the Apache JDO team), Growl (http://growl.info).
Four of the initial committers have extensive experience within the Geronimo project, among other open-source projects.
The members of the initial committer list have been working in a distributed, multi-national, asynchronous environment for the last five years, while working at SolarMetric. We had a team of up to 7 people working from 6 different locations over the course of the last five years.
Reliance on Salaried Developers
Most of the developers are paid by their employer to contribute to this project, but given the anticipation from the Java community for the a JPA implementation and the committers' sense of ownership for the code, the project would continue without issue if no salaried developers contributed to the project.
No ties to other Apache products
Open JPA will likely be used by Geronimo, requires some Apache products (regexp, commons collections, commons lang, commons pool), and supports Apache commons logging.
A fascination with the Apache brand
We think that Open JPA is something that will benefit from wide collaboration, being able to build a community of developers and committers that outlive the founders, and that will be embraced by other Apache efforts, such as the Geronimo project.
Scope of Subprojects
No subprojects proposed.
BEA Systems, Inc. will contribute the initial core source code for implementing JPA.
ASF Resources to be Created
- open-jpa-ppmc@ (with moderated subscriptions) open-jpa-user@
- Abe White (awhite at bea dot com)
- Marc Prud'hommeaux (mprudhom at bea dot com)
- Patrick Linskey (plinskey at bea dot com)
- Pinaki Poddar (pinaki dot poddar at bea dot com)
- Steve Kim (stkim at bea dot com)
- Seetharam Param (sparam at bea dot com)
- Reena Mathew (rmathew at bea dot com)
- Jacob Thomas (jthomas at bea dot com)
- Ajay Prabhu (aprabhu at bea dot com)
- Sathish Santhanam (sathish at bea dot com)
- Maruthi Nuthikattu (maruthi at bea dot com)
- Anurag Bahl (abahl at bea dot com)
- Mihir Kulkarni (mihirk at bea dot com)
- Srinivasa Segu (srinivasa dot segu at bea dot com)
- Greg Campbell (gcamp at yjsinc dot com)
- Eric Lindauer (e_lindauer at yahoo dot com)
- Gianny Damour (gianny dot damour at optusnet dot com dot au)
- Matt Hogstrom (matt at hogstrom dot org)
- David Jencks (djencks at apache dot org)
- Kevin Sutter (kwsutter at gmail dot com)
- David Wisneski (wisneskid at gmail dot com)
- Geir Magnusson Jr (geirm at apache dot org)
- Craig Russell (clr at apache dot org)
We kindly request the Incubator PMC to accept sponsorship for this proposal.
Geir Magnusson, Jr. (geirm at apache dot org)
- Eddie O'Neil (ekoneil at apache dot org)
- Brian McAllister (brianm at apache dot org)
- Geir Magnusson, Jr. (geirm at apache dot org)