Java Specification Requests

Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis Java Specification Request)

Java Specification Requests (JSR) est un système normalisé ayant pour but de faire évoluer la plateforme Java.

Certaines JSR sont optionnelles et d'autres obligatoires.[réf. nécessaire]

Présentation[modifier | modifier le code]

Il y a actuellement plus de 350 JSR (1-364 et 901-927).
Elles remplissent chacune un rôle bien précis, par exemple :

  • la gestion de dispositifs Bluetooth (jsr 82[1]) ;
  • l'accès aux informations personnelles (jsr 75[2]).

Liste des JSR[modifier | modifier le code]

Il existe plus de 350 JSR. Les plus souvent rencontrées sont les suivantes, certaines pouvant être dédiées (réservées) à un ou deux frameworks :

JSR # Specification ou Technologie Framework(s) spécifique(s)*
1 Real-Time Specification for Java (RTSJ) 1.0 Java ME
3 Java Management Extensions (JMX) 1.0, 1.1, & 1.2[3] J2SE
5 Java API for XML Processing (JAXP) 1.0 Java EE, Java SE
9 Jiro (Federated Management Architecture Specification) 1.0
12 Java Data Objects (JDO) 1.0
13 Improved BigDecimal (Java Platform, Standard Edition: java.math) Java SE
14 Implémentation des types génériques dans le langage Java J2SE 5.0
16 Java EE Connector Architecture (JCA) 1.0 Java SE
19 Enterprise JavaBeans (EJB) 2.0 J2EE
30 Connected Limited Device Configuration (CLDC) 1.0 Java ME
31 Java Architecture for XML Binding (JAXB) 1.0 Java SE
32 JAIN SIP API Specification (JSIP) 1.0, 1.1 and 1.2 Java ME
36 Connected Device Configuration (CDC) 1.0 Java ME
37 Mobile Information Device Profile (MIDP) 1.0 Java ME
40 Java Metadata Interface (JMI) 1.0
41 A Simple Assertion Facility Java SE 1.4
47 Logging API Specification J2SE 1.4
48 WBEM Services Specification J2SE 1.4
51 New I/O APIs for the Java Platform (NIO) J2SE 1.4
52 JavaServer Pages Standard Tag Library (JSTL) 1.0 and 1.1[4] Java EE
53 Java Servlet 2.3 and JavaServer Pages (JSP) 1.2 Specifications Java EE
54 Java Database Connectivity (JDBC) 3.0 Java EE, Java SE
56 Java Network Launching Protocol and API (JNLP) 1.0, 1.5 and 6.0[5] (Java Web Start) J2SE
58 Java 2 Platform, Enterprise Edition J2EE 1.3
59 Java 2 Platform, Standard Edition J2SE 1.4
63 Java API for XML Processing (JAXP) 1.1 and 1.2[6] J2EE
68 Java Platform, Micro Edition Java ME 1.0
73 Java Data Mining API (JDM) 1.0
75 PDA Optional Packages Java ME
80 API dédié à l'USB pour Java Java ME
82 Java APIs for Bluetooth Java ME
93 Java API for XML Registries (JAXR) 1.0 Java EE
94 Java Rule Engine API
102 Java Document Object Model (JDOM) 1.0
110 Java APIs for WSDL (WSDL4J) 1.0
112 Java EE Connector Architecture (JCA) 1.5 Java EE
114 Java Database Connectivity (JDBC) Rowset Implementations Java SE
116 SIP Servlet API 1.0
118 Mobile Information Device Profile (MIDP) 2.0 Java ME
120 Wireless Messaging API (WMA) Java ME
121 Application Isolation API Java SE
127 JavaServer Faces (JSF) 1.0 and 1.1[7]
133 Java Memory Model and Thread Specification Revision Java ME
135 Java Mobile Media API (MMAPI) for Java ME Java ME
139 Connected Limited Device Configuration (CLDC) 1.1 Java ME
140 Service Location Protocol (SLP) API for Java
141 Session Description Protocol (SDP) API for Java
151 Java 2 Platform, Enterprise Edition J2EE 1.4
152 JavaServer Pages (JSP) 2.0 J2EE 1.4
153 Enterprise JavaBeans (EJB) 2.1 J2EE 1.4
154 Java Servlet 2.4 and 2.5 Specifications[8] J2EE 1.4
160 Java Management Extensions (JMX) Remote API 1.0
166 Concurrency Utilities J2SE 5.0
168 Java Portlet specification 1.0[9] Java SE
170 Content repository API for Java (JCR) 1.0
172 Web Services Specification Java ME
173 StAX (Streaming API for XML) Java EE
175 A Metadata Facility for the Java Programming Language[10] Java SE
176 Java 2 Platform, Standard Edition J2SE 5.0
177 Security and Trust Services API (SATSA) Java ME
179 Location API 1.0 Java ME
180 Session Initiation Protocol (SIP) API Java ME
181 Web Services Metadata for the Java Platform Java EE
184 Mobile 3D Graphics API J2ME 1.0 & 1.1
185 Java Technology for the Wireless Industry (JTWI) Java ME
187 Instant messaging Java ME & Java SE
198 A Standard Extension API for Integrated Development Environments
199 Java Compiler API Java SE
201 Extending the Java Programming Language with Enumerations, Autoboxing, Enhanced for loops and Static Import J2SE 5.0, J2ME
202 Java Class File Specification Update Java SE
203 More New I/O APIs for the Java Platform (NIO2) Java SE
204 Unicode Supplementary Character Support (as of J2SE 5.0 adds support for Unicode 3.1) J2SE 5.0
205 Wireless Messaging API 2.0 (WMA) 2.0 Java ME
206 Java API for XML Processing (JAXP) 1.3 Java SE
208 Java Business Integration (JBI) 1.0 Java SE
215 Java Community Process (JCP) 2.6
218 Connected Device Configuration (CDC) 1.1 Java ME
220 Enterprise JavaBeans (EJB) 3.0 Java EE
221 Java Database Connectivity (JDBC) 4.0 Java EE, Java SE
222 Java Architecture for XML Binding (JAXB) 2.0 Java EE, Java SE
223 Scripting for the Java Platform for Java SE 6 Java SE
224 Java API for XML Web Services (JAX-WS), successor of JAX-RPC Java EE, Java SE
225 XQuery API for Java (XQJ)
226 Scalable 2D Vector Graphics API Java ME
231 Java Bindings for OpenGL
234 Advanced Multimedia Supplements API Java ME
235 Service Data Objects (SDO)
239 Java Bindings for OpenGL ES Java ME
241 The Groovy Programming Language
243 Java Data Objects (JDO) 2.0
244 Java Platform, Enterprise Edition J2EE 5
245 JavaServer Pages (JSP) 2.1 Java EE
247 Java Data Mining API (JDM) 2.0
248 Mobile Service Architecture Java ME
249 Mobile Service Architecture Advanced Java ME
250 Common Annotations for the Java Platform (for the Metadata facility for Java) Java EE, Java SE
252 JavaServer Faces (JSF) 1.2 Java EE
253 Mobile Telephony API (MTA) Java ME
255 Java Management Extensions (JMX) 2.0
260 Javadoc Tag Technology Update
264 Order Management API
269 Pluggable Annotations Processing API (for the Metadata facility for Java) Java SE
270 Java Platform, Standard Edition Java SE 6
271 Mobile Information Device Profile (MIDP) 3.0 Java ME
274 Standardisation du langage de script BeanShell
275 Units specification (see JScience)
276 Design-time Metadata for JavaServer Faces Components
277 Java Module System Java SE
281 IMS Services API (See IMS) Java ME
282 Real-Time Specification for Java (RTSJ) 1.1 Java ME
286 Portlet 2.0 Specification[11]
289 SIP Servlet API 1.1
291 Dynamic Component Support for Java SE (see OSGi) Java SE
292 Supporting Dynamically Typed Languages on the JavaTM Platform (see also Da Vinci Machine) Java SE
293 Location API 2.0 Java ME
294 Amélioration de la prise en charge de la modularité dans le langage Java Java SE
296 Swing Application Framework Java SE 7
301 JSF Portlet Bridge
303 Bean Validation
307 Network Mobility and Mobile Data API (not official as of July 20th 2007 but official release planned for 2. Q. 2008) Java ME
308 Annotations on Java Types Java SE 7
311 JAX-RS Java SE 5
313 Java Platform, Enterprise Edition Java EE 6
314 JavaServer Faces (JSF) 2.0
336 Java Platform, Standard Edition Java SE 7
339 JAX-RS 2.0 Java SE 6
344 JavaServer Faces (JSF) 2.2
376 Jigsaw Java SE 9
901 The Java Language Specification, Third Edition (JLS) J2SE 5.0[12]
907 Java Transaction API (JTA) 1.0 and 1.1 Java EE
912 Java 3D API 1.3
913 Java Community Process (JCP) 2.0, 2.1 & 2.5[13]
914 Java Message Service (JMS) API 1.0 and 1.1 Java EE
924 Java Virtual Machine Specification, Second Edition (JVM) (as of J2SE 5.0)[14] Java SE
926 Java 3D API 1.4

(*) On note 'Java *E' lorsque la JSR existe à partir de Java 6, 'J2*E' lorsqu'elle est antérieure

JSR consacrées aux métadonnées[modifier | modifier le code]

La JSR-175 (A Metadata Facility for the JavaTM Programming Langage, ) introduit des facilités de métadonnées dans le langage de programmation Java[15].

Les JSR relatives aux métadonnées sont les suivantes :

  • JSR-15 Image I/O Framework Specification
  • JSR-40 The JavaTM Metadata Interface (JMI) Specification
  • JSR-69 Java OLAP Interface (JOLAP)
  • JSR-120 Wireless Messaging
  • JSR-175 A Metadata Facility for the JavaTM Programming
  • JSR-181 Web Services Metadata for the JavaTM Platform
  • JSR-227 A Standard Data Binding & Data Access Facility for J2EETM
  • JSR-269 Pluggable Annotation Processing API
  • JSR-276 Design-Time Metadata for JavaServerTM Faces Components

Annexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Références[modifier | modifier le code]

  1. (en) « JSR 82: Javat. APIs for Bluetooth », Java Community Process.
  2. (en) « JSR 75: PDA Optional Packages for the J2MEt. Platform », Java Community Process.
  3. JSR 3 originally specified the JMX 1.0 release. Two subsequent "final" releases have provided JMX 1.1 and JMX 1.2. JMX 2.0 is specified by JSR 255.
  4. JSR 52 originally specified the JSTL 1.0 release. A subsequent maintenance release provided JSTL 1.1.
  5. JSR 56 originally specified the JNLP 1.0 release. A subsequent "final" release [1] provided JNLP 1.5, which was primarily a maintenance release. As of February, 2006, the JNLP 6.0 maintenance release has been completed but not finalized.
  6. JSR 63 originally specified the JAXP 1.1 release. A subsequent maintenance release of JSR 63 provided the JAXP 1.2 specification.[2] JAXP 1.3 is specified by JSR 206.
  7. JSR 127 originally specified the JSF 1.0 release. A subsequent maintenance release provided the JSF 1.1 specification.[3] JSF 1.2 is specified by JSR 252.
  8. JSR 154 originally specified the Java Servlet 2.4 release. As of February, 2006 a maintenance draft of the 2.5 servlet specification is under review, scheduled to close on March 20, 2006.
  9. Java Community Process. Cette spécification, soumise par IBM et Sun, supportée par d'autres entité depuis et adoptée en 2003, recherche l'interopérabilité entre les portlets et les portails et permet à un portlet en Java de s'exécuter dans n'importe quelle architecture distribuée avec un serveur d'application compatible J2EE. Elle définit un ensemble d'API pour les serveurs portails concernant les domaines de l'agrégation, la personnalisation, la présentation et la sécurité. Les buts principaux sont :
    • définir une API Java Portlet standard basée sur l'API Servlet ;
    • assurer l'interopérabilité et la portabilité ;
    • supporter des types de clients multiples (multiterminal) ;
    • supporter la localisation et l'internationalisation ;
    • supporter l'exécution de portlet distant.
  10. JSR 175 introduit des facilités de métadonnées dans le langage de programmation Java
  11. évolution du Java Specification Requests 168. Les travaux ont démarré en novembre 2005 et se sont terminés en juin 2008
  12. incorporates changes from JSRs 14, 41, 133, 175, 201, 204
  13. JSR 913 originally specified JCP 2.0. It was subsequently amended by various changes to voting rules to produce version 2.1 and then further changed by licensing rules, policy, and processes to get to version 2.5. JCP 2.6 is defined by JSR 215.[4]
  14. JSR 924 originally specified changes to the JVM to support changes in J2SE 5.0. As of 2006 a maintenance update to support changes proposed by JSR 202 is underway.
  15. JSR-175 site de la Java Community Process