Java Community Process

A Java Community Process vagy JCP egy 1998-ban útjára indított kezdeményezés, amely lehetővé teszi a Java technológia iránt érdeklődőknek a Java architektúra fejlesztésében való részvételt.

A JCP áttekintése

A JCP honlapjára bárki szabadon regisztrálhat, és részt vehet a javaslatok értékelésének folyamatában, valamint adhat visszajelzést a JSR-ek[1] részére. Továbbá bárki jelentkezhet, hogy JCP taggá váljon, és egy JSR Szakértői Csoportjának (Expert Group) része legyen, és benyújthasson saját JSR javaslatokat. A JCP munkájának célja, hogy megőrizze a Java technológia meghatározó tulajdonságait, a stabilitást, és platformokon átívelő kompatibilitást. Továbbá céljuk, hogy a platform folyamatos bővítésével az megfeleljen a fejlesztők újabbnál-újabb technológiai igényeinek.

Java Specification Request

A JCP központi elemei a JSR, azaz a Java Specification Request dokumentumok, amelyek javaslatokat tartalmaznak arra, hogy a jövőben mit tartalmazzon a Java specifikáció. Mielőtt egy JSR véglegessé válna, át kell esnie egy nyilvános szemlén (idegen szóval public review-n). Ezek után a JSR-t szavazásra bocsátják.

A JSR elbírálási folyamat

Az elbírálási folyamat az évek során több alkalommal lett módosítva, újragondolva. A különböző módosításokat verziószámokkal illetik, a legújabb változat a JCP 2.7, mely 2009 májusától van alkalmazva. A folyamat négy fő lépésből áll:

  1. Kezdeményezés: Egy specifikáció javaslatot általában a közösségi tagok nyújtanak be, és a Végrehajtó Bizottság hagy jóvá kidolgozásra. Gyakran, hetente több új javaslatot is elfogadnak.
  2. Korai piszkozat: Miután egy JSR-t jóváhagytak, szakértői csoport alakul, akik kidolgozzák az első piszkozatot, melyet a közösség és a Végrehajtó Bizottság is értékel. A visszajelzések alapján a szakértői csoport folyamatosan finomítja a piszkozatot. Ebben a szakaszban a Végrehajtó Bizottság elővetíthet licencelési és üzleti feltételeket.
  3. Nyilvános piszkozat: A JSR-t kihelyezik a nyilvános website-ra, ahol bárki megtekintheti, és értékelheti azt. Az értékelés után a Végrehajtó Bizottság eldönti, hogy a piszkozat továbbmehet-e a következő lépésre. Felhasználják a közösség által biztosított visszajelzéseket, hogy létrehozza a "végső piszkozatot" (Proposed Final Draft). A szakértői csoport leellenőrzi, hogy technikai szempontból megfelel-e az elvárásoknak a "minta megvalósítás", és elküldi azt a Végrehajtó Bizottságnak végső jóváhagyásra. Ezután a specifikáció, megvalósítás, és a kompatibilitási csomag mind publikálásra kerülnek.
  4. Karbantartás: A folyamatos visszajelzések, javaslatok, és igényeknek alapján folyamatosan frissítve van a specifikáció. A Végrehajtó Bizottság dönti el, hogy mely javasolt változtatásokat kell azonnal végrehajtani, és melyekre kell szakértői csoportot toborozni. Az ő felelősségük továbbá a konfliktusok elrendezése is.

JSR-ek listája

Több, mint 300 JSR létezik. Az alábbi táblázat néhány közismertebbet tartalmaz:

JSR #Cím
5Java API for XML Processing (JAXP) 1.0
12Java Data Objects (JDO) 1.0
14Generikus adattípusok (a J2SE 5.0 verziójával kerültek be a szabványba)
19Enterprise JavaBeans (EJB) 2.0
47Logolási API specifikáció (a J2SE 1.4 verzióval vált a szabvány részévé)
48A WBEM Services Specification a J2SE 1.4 verziótól a szabvány része. Webalapú vállalatmenedzselési specifikáció
54Java Database Connectivity (JDBC) 3.0 Adatbázis kapcsolódás
59Java 2 Platform, Standard Edition (J2SE) 1.4 (Merlin)
73Java Data Mining API (JDM) 1.0 Adatbányász API
80USB API
82Bluetooth API
110WSDL (WSDL4J) 1.0 API
140Service Location Protocol (SLP) API
152JavaServer Pages (JSP) 2.0 specifikáció
153Enterprise JavaBeans (EJB) 2.1 specifikáció
168Java Portlet 1.0 specifikáció
170Content repository API for Java (JCR) 1.0
176Java 2 Platform, Standard Edition (J2SE) 5.0 (Tiger)
199Java Compiler API
200Pack200 hálózati átviteli formátum a Java archív fájlok számára
206Java API for XML Processing (JAXP) 1.3
220Enterprise JavaBeans (EJB) 3.0
221Java Database Connectivity (JDBC) 4.0 Adatbázis kapcsolódás
223Scripting for the Java Platform for Java SE 6 Szkriptnyelvek támogatása
241Groovy programozási nyelv
243Java Data Objects (JDO) 2.0
245JavaServer Pages (JSP) 2.1
247Java Data Mining API (JDM) 2.0 Adatbányász API
252JavaServer Faces (JSF) 1.2
268Java Portlet 2.0 specifikáció
270Java Platform, Standard Edition (Java SE) 6 (Mustang)
308Típusannotációk (Java SE 7)
311Java API for RESTful Web Services (JAX-RS) 1.0 and 1.1
316Java Platform, Enterprise Edition (Java EE) 6
317Perzisztencia (Java EE 5)
322Java EE Connector Architecture (JCA) 1.6
330Dependency Injection for Java
343Java Message Service 2.0 (JMS)
354Java Money & Currency API
914Java Message Service (JMS) API 1.0 and 1.1
924Java virtuális gép Specification, Second Edition (JVM) (J2SE 5.0 idején).[2]
926Java 3D API 1.5

További információk

Jegyzetek