3.0.4 Who Defines These Specifications?
Another key advantage of Java and the J2EE standard is the way in which component solutions are identified and defined. Early on, Sun promoted the openness of the Java language, initially by giving it away.
Advancement of Java technology and the formulation of the J2EE specification have been carried out by the JCP (Java Community Process). Community is the operative word; any interested individual or organization can participate. For individuals participation is free; organizations pay nominal dues. Delegates from the membership propose, review, and accept technology specification proposals. While not an open source initiative, but under a community license that still allows Sun to be steward of the language, the JCP encourages community participation.
Ideas are proposed through the creation of a Java Specification Request (JSR). Members evaluate and vote on the JSR for merit. Once accepted the JSR becomes an official technology component and goes through the design and development process by a committee made up JCP membersusually a cross section of well-known vendor members.
The advantage of community participation is the proliferation of new frameworks/components that are derived and designed from a wide point of view, arguably larger than proprietary-based technology that may be more influenced by market pressures. These market pressures still exist in the JCP environment, but the checks and balances of the membership can make them have less influence over the manner in which the problem is solved.
Of course, there is a down side to this approach. Whereas a company can be very nimble in getting a solution out the door by using a custom-built design, standardized solutions must receive approval and validation from the community which can take time.