Java Specification Requests

Pour les articles homonymes, voir JSR.

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cette section ou cet article est une traduction incomplète (anglais) (septembre 2018).

Vous pouvez modifier la page pour effectuer la traduction.

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 (en) (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, 30 septembre 2004) 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]

* Le JCP
* Liste des JSR

### 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

* Portail de la programmation informatique

*[(en)]: Langue : anglais
*[t.]: tome