Java Specification Requests
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
modifierIl y a actuellement plus de 350 JSR (1-364 et 901-927).
Elles remplissent chacune un rôle bien précis, par exemple :
Liste des JSR
modifierIl 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
modifierLa 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
modifierLiens externes
modifierRéférences
modifier- (en) « JSR 82: Javat. APIs for Bluetooth », Java Community Process.
- (en) « JSR 75: PDA Optional Packages for the J2MEt. Platform », Java Community Process.
- 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.
- JSR 52 originally specified the JSTL 1.0 release. A subsequent maintenance release provided JSTL 1.1.
- 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.
- 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.
- 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.
- 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.
- 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.
- JSR 175 introduit des facilités de métadonnées dans le langage de programmation Java
- évolution du Java Specification Requests 168. Les travaux ont démarré en novembre 2005 et se sont terminés en juin 2008
- incorporates changes from JSRs 14, 41, 133, 175, 201, 204
- 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]
- 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.
- JSR-175 site de la Java Community Process