Java Community Process (JCP) and Java Specification Request (JSR)
I wanted to introduce two important things in java, the JCP and JSR in this article. A java guy must be knowing about these and no excuse. Java community process gives us the public an opportunity to participate in the development and maintenance of the Java platform. This is one of the best thing in java. It gives us a voice to raise our concern, ask for a feature we love and change the way java works.
JCP was launched by Sun Microsystems on December, 1998. JCP was created long back just after three years from the creation of java. JCP is still alive and going great. Can we attribute the success of java platform to JCP?
jcp.org is the website and we can register in it. Registering in website, enables us to use it in a better way but that does not make us a JCP member. It is governed by a membership program for which we need to register separately. As of the moment of writing we have following options to register as a JCP member,
- commercial entities: $5000
- educational/non-profit organizations: $2000
- individuals: $0
- existing licensees: $0
- Java User Groups: $0
Registration process is kind of cumbersome.
JCP gives annual awards in the following three categories,
- JCP member of the year
- Outstanding spec lead
- Most significant JSR
Java Specification Request (JSR)
So how do we participate? Java specification request (JSR) is the mechanism provided by JCP to participate in it. JSR is a formal documentation that describes the technology request in detailed manner. A JSR can be initiated by a JCP member. It goes through multiple stages and finally for implementation. At any time there will be multiple JSRs in different stages.
I recommend you to choose a JSR which you like and join its mailing list. Let it be your first step. Go through that JSR and try to understand it and follow it in different stages. When it gets implemented, you will have nice hold on it and may be that will take you to the next level of actively participating in a JSR.
Four stages of a JSR
- Initiation – First stage of a JSR, just a proposal is initiated by JCP member.
- Early Draft Review – Once the initiation is approved, an expert group will work on creating a early draft of that JSR. JCP and executive committee will review the draft and approve it.
- Public Draft – Once the early draft is approved, specification comes to this public draft stage. The specification is given to the public for open review and it is revised, a reference implementation is created then a final draft is taken to Executive Committee for approval.
- Maintenance – Once the final draft is approved, the specification enters the maintenance phase. The specification is revised based on clarifications, requests, issues and for enhancements.
This Core Java tutorial was added on 02/12/2012.