Java Community Process
Encyclopedia
The Java Community Process or JCP, established in 1998, is a formalized process that allows interested parties to get involved in the definition of future versions and features of the Java platform.

The JCP involves the use of Java Specification Requests (JSRs) – the formal documents that describe proposed specifications and technologies for adding to the Java platform. Formal public reviews of JSRs take place before a JSR becomes final and the JCP Executive Committee
JCP Executive Committee
The JCP Executive Committee is the group of members guiding the evolution of Java technology in the Java Community Process . The EC represents both major stakeholders and a representative cross-section of the Java Community. It is composed of 16 JCP members plus a non-voting chair. The chair of...

 votes on it. A final JSR provides a reference implementation
Reference implementation
In the software development process, a reference implementation is the standard from which all other implementations, with their attendant customizations, are measured, and to which all improvements are added...

that is a free implementation of the technology in source code form and a Technology Compatibility Kit
Technology Compatibility Kit
A Technology Compatibility Kit is a suite of tests that at least nominally checks a particular alleged implementation of a Java Specification Request for compliance...

to verify the API specification.

A JSR describes the JCP itself. , JSR 215 describes the current version (2.7) of the JCP.

List of JSRs

There are over 300 JSRs. Some of the more visible JSRs include:
JSR #Specification or Technology
1 Real-Time Specification for Java (RTSJ) 1.0
3 Java Management Extensions
Java Management Extensions
Java Management Extensions is a Java technology that supplies tools for managing and monitoring applications, system objects, devices and service oriented networks. Those resources are represented by objects called MBeans...

 (JMX) 1.0, 1.1, & 1.2
5 Java API for XML Processing
Java API for XML Processing
The Java API for XML Processing, or JAXP , is one of the Java XML programming APIs. It provides the capability of validating and parsing XML documents...

 (JAXP) 1.0
8 OSGI
OSGi
The Open Services Gateway initiative framework is a module system and service platform for the Java programming language that implements a complete and dynamic component model, something that does not exist in standalone Java/VM environments...

 Open Services Gateway Specification
9 Jiro
Jiro
Jiro is the registered name used by Sun Microsystems for an extension to Java and Jini.Jiro as an industry initiative, along with an EMC initiative called "Wide Sky" were catalysts in the late nineties for a common interface to storage devices, leading to the Bluefin specification, subsequently...

 (Federated Management Architecture Specification) 1.0
12 Java Data Objects
Java Data Objects
Java Data Objects is a specification of Java object persistence. One of its features is a transparency of the persistent services to the domain model. JDO persistent objects are ordinary Java programming language classes ; there's no requirement for them to implement certain interfaces or extend...

 (JDO) 1.0
13 Improved BigDecimal (Java Platform, Standard Edition#java.math)
14 Add Generic Types
Generic programming
In a broad definition, generic programming is a style of computer programming in which algorithms are written in terms of to-be-specified-later types that are then instantiated when needed for specific types provided as parameters...

 To The Java Programming Language (as of J2SE 5.0)
16 Java EE Connector Architecture
Java EE Connector Architecture
Java EE Connector Architecture is a Java-based technology solution for connecting application servers and enterprise information systems as part of enterprise application integration solutions. While JDBC is specifically used to connect Java EE applications to databases, JCA is a more generic...

 (JCA) 1.0
19 Enterprise JavaBean
Enterprise JavaBean
Enterprise JavaBeans is a managed, server-side component architecture for modular construction of enterprise applications.The EJB specification is one of several Java APIs in the Java EE specification. EJB is a server-side model that encapsulates the business logic of an application...

s (EJB) 2.0
22 JAIN SLEE API Specification
JSLEE
A Service Logic Execution Environment is a well known concept in the telecommunications industry. A SLEE is a high throughput, low latency event processing application environment...

 (JSLEE) 1.0
30 Connected Limited Device Configuration
Connected Limited Device Configuration
The Connected Limited Device Configuration is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation...

 (CLDC) 1.0 for Java ME
31 Java Architecture for XML Binding
Java Architecture for XML Binding
Java Architecture for XML Binding allows Java developers to map Java classes to XML representations. JAXB provides two main features: the ability to marshal Java objects into XML and the inverse, i.e. to unmarshal XML back into Java objects...

 (JAXB) 1.0
32 JAIN SIP API Specification
Session Initiation Protocol (Java)
Session Initiation Protocol is an IETF standard protocol for IP-communication, enabling IP-Telephony gateways, client endpoints, PBXs and other communication systems or devices to communicate with each other...

 (JSIP) 1.0, 1.1 and 1.2 for Java ME
36 Connected Device Configuration
Connected Device Configuration
The Connected Device Configuration is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation. The CDC is combined with one or more profiles to give developers a platform for building...

 (CDC) 1.0 for Java ME
37 Mobile Information Device Profile
Mobile Information Device Profile
Mobile Information Device Profile is a specification published for the use of Java on embedded devices such as mobile phones and PDAs. MIDP is part of the Java Platform, Micro Edition framework and sits on top of Connected Limited Device Configuration , a set of lower level programming...

 (MIDP) 1.0 for Java ME
40 Java Metadata Interface
Java Metadata Interface
Given that metadata is a set of descriptive, structural and administrative data about a group of computer data , Java Metadata Interface is a platform-neutral specification that defines the creation, storage, access, lookup and exchange of metadata in the Java programming language.- History :The...

 (JMI) 1.0
41 A Simple Assertion Facility
Assertion (computing)
In computer programming, an assertion is a predicate placed in a program to indicate that the developer thinks that the predicate is always true at that place.For example, the following code contains two assertions:...

 (as of J2SE 1.4)
47 Logging API Specification (as of J2SE 1.4)
48 WBEM Services Specification
WBEM Services Specification
JSR 48 WBEM Services Specification is a Java Specification Request developed under the Java Community Process. It specifies the Java language binding of the DMTF Common Information Model/Web-Based Enterprise Management standards. The JSR 48 Expert Group has completed the public review in 2006 and...

 (as of J2SE 1.4)
51 New I/O APIs for the Java Platform
New I/O
New I/O, usually called NIO, is a collection of Java programming language APIs that offer features for intensive I/O operations. It was introduced with the J2SE 1.4 release of Java by Sun Microsystems to complement an existing standard I/O. NIO was developed under the Java Community Process as JSR...

 (NIO) (as of J2SE 1.4)
52 JavaServer Pages Standard Tag Library
JavaServer Pages Standard Tag Library
The JavaServer Pages Standard Tag Library , is a component of the Java EE Web application development platform. It extends the JSP specification by adding a tag library of JSP tags for common tasks, such as XML data processing, conditional execution, loops and internationalization...

 (JSTL) 1.0 and 1.1
53 Java Servlet
Java Servlet
A servlet is a Java programming language class used to extend the capabilities of servers that host applications accessed via a request-response programming model. Although servlets can respond to any type of request, they are commonly used to extend the applications hosted by Web servers...

 2.3 and JavaServer Pages
JavaServer Pages
JavaServer Pages is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML, or other document types...

 (JSP) 1.2 Specifications
54 Java Database Connectivity
Java Database Connectivity
Java DataBase Connectivity, commonly referred to as JDBC, is an API for the Java programming language that defines how a client may access a database. It provides methods for querying and updating data in a database. JDBC is oriented towards relational databases...

 (JDBC) 3.0
56 Java Network Launching Protocol and API (JNLP) 1.0, 1.5 and 6.0 (Java Web Start
Java Web Start
In computing, Java Web Start is a framework developed by Sun Microsystems that allows users to start application software for the Java Platform directly from the Internet using a web browser....

)
58 Java 2 Platform, Enterprise Edition
Java Platform, Enterprise Edition
Java Platform, Enterprise Edition or Java EE is widely used platform for server programming in the Java programming language. The Java platform differs from the Java Standard Edition Platform in that it adds libraries which provide functionality to deploy fault-tolerant, distributed, multi-tier...

 (J2EE) 1.3
59 Java 2 Platform, Standard Edition
Java Platform, Standard Edition
Java Platform, Standard Edition or Java SE is a widely used platform for programming in the Java language. It is the Java Platform used to deploy portable applications for general use...

 (J2SE) 1.4 (Merlin)
63 Java API for XML Processing
Java API for XML Processing
The Java API for XML Processing, or JAXP , is one of the Java XML programming APIs. It provides the capability of validating and parsing XML documents...

 (JAXP) 1.1 and 1.2
68 Java Platform, Micro Edition
Java Platform, Micro Edition
Java Platform, Micro Edition, or Java ME, is a Java platform designed for embedded systems . Target devices range from industrial controls to mobile phones and set-top boxes...

 (Java ME) 1.0
73 Java Data Mining
Java Data Mining
Java Data Mining is a standard Java API for developing data mining applications and tools. JDM defines an object model and Java API for data mining objects and processes. JDM enables applications to integrate data mining technology for developing predictive analytics applications and tools. The...

 API (JDM) 1.0
75 PDA Optional Packages for the J2ME Platform
PDA Optional Packages for the J2ME Platform
PDA Optional Packages for the J2ME Platform JSR 75 is a specification that standardizes access in the Java on embedded devices such as mobile phones and PDAs to data that resides natively on mobile devices. JSR 75 is part of the Java ME framework and sits on top of CLDC, a set of lower level...

80 Java USB
Universal Serial Bus
USB is an industry standard developed in the mid-1990s that defines the cables, connectors and protocols used in a bus for connection, communication and power supply between computers and electronic devices....

 API
82 Java APIs for Bluetooth
Java APIs for Bluetooth
The Java APIs for Bluetooth is a Java ME specification for APIs that allow Java midlets to use Bluetooth on supporting devices. The specification was developed under the Java Community Process as JSR 82...

88 Java EE Application Deployment
93 Java API for XML Registries
Java API for XML Registries
Java API for XML Registries defines a standard API for Java platform applications to access and programmatically interact with various kinds of metadata registries. The JAXR API was developed under the Java Community Process as JSR 93....

 (JAXR) 1.0
94 Java Rules Engine API
102 Java Document Object Model (JDOM) 1.0
110 Java APIs for WSDL
Web Services Description Language
The Web Services Description Language is an XML-based language that is used for describing the functionality offered by a Web service. A WSDL description of a web service provides a machine-readable description of how the service can be called, what parameters it expects and what data structures...

 (WSDL4J) 1.0
112 Java EE Connector Architecture
Java EE Connector Architecture
Java EE Connector Architecture is a Java-based technology solution for connecting application servers and enterprise information systems as part of enterprise application integration solutions. While JDBC is specifically used to connect Java EE applications to databases, JCA is a more generic...

 (JCA) 1.5
113 Java Speech API 2 (JSAPI2)
114 Java Database Connectivity
Java Database Connectivity
Java DataBase Connectivity, commonly referred to as JDBC, is an API for the Java programming language that defines how a client may access a database. It provides methods for querying and updating data in a database. JDBC is oriented towards relational databases...

 (JDBC) Rowset Implementations
116 SIP Servlet API
Session Initiation Protocol (Java)
Session Initiation Protocol is an IETF standard protocol for IP-communication, enabling IP-Telephony gateways, client endpoints, PBXs and other communication systems or devices to communicate with each other...

 1.0
118 Mobile Information Device Profile
Mobile Information Device Profile
Mobile Information Device Profile is a specification published for the use of Java on embedded devices such as mobile phones and PDAs. MIDP is part of the Java Platform, Micro Edition framework and sits on top of Connected Limited Device Configuration , a set of lower level programming...

 (MIDP) 2.0 for Java ME
120 Wireless Messaging API (WMA)
121 Application Isolation API
Application Isolation API
The Application Isolation API provides a specification for isolating and controlling Java application life cycles within a single Java Virtual Machine or between multiple JVMs. An isolated computation is described as an Isolate that can communicate and exchange resource handles The Application...

127 JavaServer Faces
JavaServer Faces
JavaServer Faces is a Java-based Web application framework intended to simplify development integration of web-based user interfaces....

 (JSF) 1.0 and 1.1
133 Java Memory Model
Java Memory Model
The Java memory model describes how threads in the Java programming language interact through memory. Together with the description of single-threaded execution of code, the memory model provides the semantics of the Java programming language....

 and Thread Specification Revision
135 Java Mobile Media API
Java Mobile Media API
The Mobile Media API is an API specification for the Java ME platform CDC and CLDC devices such as mobile phones. Depending on how it's implemented, the APIs allow applications to play and record sounds and video, and to capture still images...

 (MMAPI) for Java ME
139 Connected Limited Device Configuration
Connected Limited Device Configuration
The Connected Limited Device Configuration is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation...

 (CLDC) 1.1 for Java ME
140 Service Location Protocol
Service Location Protocol
The Service Location Protocol is a service discovery protocol that allows computers and other devices to find services in a local area network without prior configuration. SLP has been designed to scale from small, unmanaged networks to large enterprise networks...

 (SLP) API for Java
141 Session Description Protocol
Session Description Protocol
The Session Description Protocol is a format for describing streaming media initialization parameters. The IETF published the original specification as an IETF Proposed Standard in April 1998, and subsequently published a revised specification as an IETF Proposed Standard as RFC 4566 in July...

 (SDP) API for Java
151 Java 2 Platform, Enterprise Edition
Java Platform, Enterprise Edition
Java Platform, Enterprise Edition or Java EE is widely used platform for server programming in the Java programming language. The Java platform differs from the Java Standard Edition Platform in that it adds libraries which provide functionality to deploy fault-tolerant, distributed, multi-tier...

 (J2EE) 1.4
152 JavaServer Pages
JavaServer Pages
JavaServer Pages is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML, or other document types...

 (JSP) 2.0
153 Enterprise JavaBean
Enterprise JavaBean
Enterprise JavaBeans is a managed, server-side component architecture for modular construction of enterprise applications.The EJB specification is one of several Java APIs in the Java EE specification. EJB is a server-side model that encapsulates the business logic of an application...

s (EJB) 2.1
154 Java Servlet
Java Servlet
A servlet is a Java programming language class used to extend the capabilities of servers that host applications accessed via a request-response programming model. Although servlets can respond to any type of request, they are commonly used to extend the applications hosted by Web servers...

 2.4 and 2.5 Specifications
160 Java Management Extensions
Java Management Extensions
Java Management Extensions is a Java technology that supplies tools for managing and monitoring applications, system objects, devices and service oriented networks. Those resources are represented by objects called MBeans...

 (JMX) Remote API 1.0
166 Concurrency
Java concurrency
The Java language and the JVM have been designed to support concurrent programming, and all execution in takes place in the context of threads. Objects and resources can be accessed by many separate threads; each thread has its own path of execution but can potentially access any object in the...

 Utilities (as of J2SE 5.0 , and )
168 Portlet specification 1.0
170 Content repository API for Java
Content repository API for Java
Content Repository API for Java is a specification for a Java platform application programming interface to access content repositories in a uniform manner. The content repositories are used in content management systems to keep the content data and also the metadata used in content management...

 (JCR) 1.0
172 Web Services Specification for Java ME
173 StAX
StAX
Streaming API for XML is an application programming interface to read and write XML documents, originating from the Java programming language community.Traditionally, XML APIs are either:...

 (Streaming API for XML)
175 A Metadata Facility for the Java Programming Language
176 Java 2 Platform, Standard Edition
Java Platform, Standard Edition
Java Platform, Standard Edition or Java SE is a widely used platform for programming in the Java language. It is the Java Platform used to deploy portable applications for general use...

 (J2SE) 5.0 (Tiger)
177 Security and Trust Services API for J2ME
Security and Trust Services API for J2ME
The Security and Trust Services API for J2ME is a collection of Java ME-based APIs that provides compliant devices with additional cryptographic security features. It permits the communication of a Java ME application with a smartcard through the APDU and Java Card RMI protocols...

 (SATSA)
179 Location API
Location API for Java ME
The Location API for Java ME is a compact and generic Java 2 ME API that produces information about the device's present physical location to Java applications...

 1.0 for Java ME
180 Session Initiation Protocol (SIP) API for Java ME
Session Initiation Protocol (Java)
Session Initiation Protocol is an IETF standard protocol for IP-communication, enabling IP-Telephony gateways, client endpoints, PBXs and other communication systems or devices to communicate with each other...

181 Web Services Metadata for the Java Platform
184 Mobile 3D Graphics API
Mobile 3D Graphics API
The Mobile 3D Graphics API, commonly referred to as M3G, is a specification defining an API for writing Java programs that produce 3D computer graphics. It extends the capabilities of the Java ME, a version of the Java platform tailored for embedded devices such as mobile phones and PDAs...

 for Java ME 1.0 and 1.1
185 Java Technology for the Wireless Industry (JTWI)
187 Instant messaging
Instant messaging
Instant Messaging is a form of real-time direct text-based chatting communication in push mode between two or more people using personal computers or other devices, along with shared clients. The user's text is conveyed over a network, such as the Internet...

 (Java ME and Java SE)
198 A Standard Extension API for Integrated Development Environment
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...

s
199 Java Compiler
Java compiler
A Java compiler is a compiler for the Java programming language. The most common form of output from a Java compiler is Java class files containing platform-neutral Java bytecode...

 API
201 Extending the Java Programming Language
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

 with Enumerations, Autoboxing, Enhanced for loops and Static Import
Static import
Static import is a feature introduced in the Java programming language that allows members defined in a class as public static to be used in Java code without specifying the class in which the field is defined...

 (as of J2SE 5.0)
202 Java Class File
Class (file format)
In the Java programming language, source files are compiled into machine-readable class files which have a .class extension. Since Java is a platform-independent language, source code is compiled into an output file known as bytecode, which it stores in a .class file. If a source file has more...

 Specification Update
203 More New I/O APIs for the Java Platform
New I/O
New I/O, usually called NIO, is a collection of Java programming language APIs that offer features for intensive I/O operations. It was introduced with the J2SE 1.4 release of Java by Sun Microsystems to complement an existing standard I/O. NIO was developed under the Java Community Process as JSR...

 (NIO2)
204 Unicode Supplementary Character Support (as of J2SE 5.0 adds support for Unicode
Unicode
Unicode is a computing industry standard for the consistent encoding, representation and handling of text expressed in most of the world's writing systems...

 3.1)
205 Wireless Messaging API 2.0 (WMA) 2.0
206 Java API for XML Processing
Java API for XML Processing
The Java API for XML Processing, or JAXP , is one of the Java XML programming APIs. It provides the capability of validating and parsing XML documents...

 (JAXP) 1.3
208 Java Business Integration
Java Business Integration
Java Business Integration is a specification developed under the Java Community Process for an approach to implementing a service-oriented architecture . The JCP reference is JSR 208 for JBI 1.0 and JSR 312 for JBI 2.0....

 (JBI) 1.0
215 Java Community Process (JCP) 2.6
218 Connected Device Configuration
Connected Device Configuration
The Connected Device Configuration is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation. The CDC is combined with one or more profiles to give developers a platform for building...

 (CDC) 1.1 for Java ME
220 Enterprise JavaBean
Enterprise JavaBean
Enterprise JavaBeans is a managed, server-side component architecture for modular construction of enterprise applications.The EJB specification is one of several Java APIs in the Java EE specification. EJB is a server-side model that encapsulates the business logic of an application...

s (EJB) 3.0
221 Java Database Connectivity
Java Database Connectivity
Java DataBase Connectivity, commonly referred to as JDBC, is an API for the Java programming language that defines how a client may access a database. It provides methods for querying and updating data in a database. JDBC is oriented towards relational databases...

 (JDBC) 4.0
222 Java Architecture for XML Binding
Java Architecture for XML Binding
Java Architecture for XML Binding allows Java developers to map Java classes to XML representations. JAXB provides two main features: the ability to marshal Java objects into XML and the inverse, i.e. to unmarshal XML back into Java objects...

 (JAXB) 2.0
223 Scripting for the Java Platform
Scripting for the Java Platform
Scripting for the Java Platform is a framework for embedding scripts into Java source code. The target platform is the same as that of Java servlets, specifically Java Platform, Enterprise Edition 1.4. Java SE 6 includes a JavaScript engine based on Rhino JavaScript for Java version 1.6R2. ...

 for Java SE 6
224 Java API for XML Web Services (JAX-WS), successor of JAX-RPC
JAX-RPC
Java API for XML-based RPC allows a Java application to invoke a Java-based Web Service with a known description while still being consistent with its WSDL description. It can be seen as Java RMIs over Web services. JAX-RPC 2.0 was renamed JAX-WS 2.0 . JAX-RPC 1 is deprecated with Java EE 6...

225 XQuery API for Java
XQuery API for Java
XQuery API for Java refers to the common Java API for the W3C XQuery 1.0 specification. It was submitted under the Java Community Process as JSR 225 , and final release was made available on June 24, 2009.The XQJ API enables a Java developer to:...

 (XQJ)
226 Scalable 2D Vector Graphics API for Java ME
229 Payment API (PAPI)
231 Java Bindings for OpenGL
Java Bindings for OpenGL
Java Binding for the OpenGL API is a JSR API specification for the Java SE platform which allows to use OpenGL on the Java Platform. There is also Java Binding for the OpenGL ES API for the Java ME platform.- Programming concepts :...

234 Advanced Multimedia Supplements
Advanced Multimedia Supplements
In computing, the Advanced Multimedia Supplements is an API specification for the Java ME platform. Practically speaking, it is an extension to JSR 135 Mobile Media API providing new features, such as positional 3D audio processing, audio and video effects processing, better controls for digital...

 API for Java ME
235 Service Data Objects
Service Data Objects
Service Data Objects is a technology that allows heterogeneous data to be accessed in a uniform way. The SDO specification was originally developed in 2004 as a joint collaboration between BEA and IBM and approved by the Java Community Process...

 (SDO)
239 Java Bindings for OpenGL
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

 ES
240 JAIN SLEE API Specification
JSLEE
A Service Logic Execution Environment is a well known concept in the telecommunications industry. A SLEE is a high throughput, low latency event processing application environment...

 (JSLEE) 1.1
241 The Groovy Programming Language
243 Java Data Objects
Java Data Objects
Java Data Objects is a specification of Java object persistence. One of its features is a transparency of the persistent services to the domain model. JDO persistent objects are ordinary Java programming language classes ; there's no requirement for them to implement certain interfaces or extend...

 (JDO) 2.0
244 Java Platform, Enterprise Edition
Java Platform, Enterprise Edition
Java Platform, Enterprise Edition or Java EE is widely used platform for server programming in the Java programming language. The Java platform differs from the Java Standard Edition Platform in that it adds libraries which provide functionality to deploy fault-tolerant, distributed, multi-tier...

 (Java EE) 5
245 JavaServer Pages
JavaServer Pages
JavaServer Pages is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML, or other document types...

 (JSP) 2.1
247 Java Data Mining
Java Data Mining
Java Data Mining is a standard Java API for developing data mining applications and tools. JDM defines an object model and Java API for data mining objects and processes. JDM enables applications to integrate data mining technology for developing predictive analytics applications and tools. The...

 API (JDM) 2.0
248 Mobile Service Architecture
249 Mobile Service Architecture 2
250 Common Annotations
Java annotation
An annotation, in the Java computer programming language, is a special form of syntactic metadata that can be added to Java source code. Classes, methods, variables, parameters and packages may be annotated...

 for the Java Platform (for the Metadata facility for Java
Metadata facility for Java
The Metadata Facility for Java is a specification for Java that defines an API for annotating fields, methods, and classes as having particular attributes that indicate they should be processed in specific ways by development tools, deployment tools, or run-time libraries.The specification was...

)
252 JavaServer Faces
JavaServer Faces
JavaServer Faces is a Java-based Web application framework intended to simplify development integration of web-based user interfaces....

 (JSF) 1.2
253 Mobile Telephony API (MTA)
255 Java Management Extensions
Java Management Extensions
Java Management Extensions is a Java technology that supplies tools for managing and monitoring applications, system objects, devices and service oriented networks. Those resources are represented by objects called MBeans...

 (JMX) 2.0
256 Mobile Sensor API
257 Contactless Communication API (NFC
NFC
NFC may refer to:* Nagacorp FC, a Cambodian sporting club* National Finance Center, a division of the United States Department of Agriculture* National Football Conference, a constituent conference of the National Football League...

)
260 Javadoc
Javadoc
Javadoc is a documentation generator from Sun Microsystems for generating API documentation in HTML format from Java source code.The "doc comments" format used by Javadoc is the de facto industry standard for documenting Java classes. Some IDEs, such as Netbeans and Eclipse automatically generate...

 Tag Technology Update
269 Pluggable Annotations
Java annotation
An annotation, in the Java computer programming language, is a special form of syntactic metadata that can be added to Java source code. Classes, methods, variables, parameters and packages may be annotated...

 Processing API (for the Metadata facility for Java
Metadata facility for Java
The Metadata Facility for Java is a specification for Java that defines an API for annotating fields, methods, and classes as having particular attributes that indicate they should be processed in specific ways by development tools, deployment tools, or run-time libraries.The specification was...

)
270 Java Platform, Standard Edition
Java Platform, Standard Edition
Java Platform, Standard Edition or Java SE is a widely used platform for programming in the Java language. It is the Java Platform used to deploy portable applications for general use...

 (Java SE) 6 (Mustang)
271 Mobile Information Device Profile
Mobile Information Device Profile
Mobile Information Device Profile is a specification published for the use of Java on embedded devices such as mobile phones and PDAs. MIDP is part of the Java Platform, Micro Edition framework and sits on top of Connected Limited Device Configuration , a set of lower level programming...

 (MIDP) 3.0 for Java ME
274 The BeanShell
BeanShell
BeanShell is a Java scripting language, invented by Patrick Niemeyer. It runs in the Java Runtime Environment and uses Java syntax, in addition to scripting commands and syntax.- Features :...

 Scripting Language
275 Units specification (see Units of Measurement
Units of measurement
A unit of measurement is a definite magnitude of a physical quantity, defined and adopted by convention and/or by law, that is used as a standard for measurement of the same physical quantity. Any other value of the physical quantity can be expressed as a simple multiple of the unit of...

)
276 Design-time Metadata
Metadata
The term metadata is an ambiguous term which is used for two fundamentally different concepts . Although the expression "data about data" is often used, it does not apply to both in the same way. Structural metadata, the design and specification of data structures, cannot be about data, because at...

 for JavaServer Faces
JavaServer Faces
JavaServer Faces is a Java-based Web application framework intended to simplify development integration of web-based user interfaces....

 Components
277 Java Module System
Java Module System
The Java Module System specifies a distribution format for collections of Java code and associated resources. It also specifies a repository for storing these collections, or modules, and identifies how they can be discovered, loaded and checked for integrity...

280 XML API for Java ME
281 IMS Services API (See IMS
IP Multimedia Subsystem
The IP Multimedia Subsystem or IP Multimedia Core Network Subsystem is an architectural framework for delivering Internet Protocol multimedia services. It was originally designed by the wireless standards body 3rd Generation Partnership Project , as a part of the vision for evolving mobile...

)
282 Real-Time Specification for Java (RTSJ) 1.1
283 Content repository API for Java
Content repository API for Java
Content Repository API for Java is a specification for a Java platform application programming interface to access content repositories in a uniform manner. The content repositories are used in content management systems to keep the content data and also the metadata used in content management...

 (JCR) 2.0
286 Portlet Specification 2.0
289 SIP Servlet API
Session Initiation Protocol (Java)
Session Initiation Protocol is an IETF standard protocol for IP-communication, enabling IP-Telephony gateways, client endpoints, PBXs and other communication systems or devices to communicate with each other...

 1.1
290 Java Language & XML User Interface Markup Integration (XML-UI)
291 Dynamic Component Support for Java SE (see OSGi
OSGi
The Open Services Gateway initiative framework is a module system and service platform for the Java programming language that implements a complete and dynamic component model, something that does not exist in standalone Java/VM environments...

)
292 Supporting Dynamically Typed Languages on the JavaTM Platform
Da Vinci Machine
The Da Vinci Machine, also called the Multi Language Virtual Machine is a Sun Microsystems project aiming to prototype the extension of the Java Virtual Machine to add support for dynamic languages....

293 Location API
Location API for Java ME
The Location API for Java ME is a compact and generic Java 2 ME API that produces information about the device's present physical location to Java applications...

 2.0 for Java ME
294 Improved Modularity Support in the Java Programming Language
296 Swing Application Framework
Swing Application Framework
The Swing Application Framework is a Java specification for providing a simple application framework for Swing applications. It defines infrastructure common to most desktop applications, making Swing applications easier to create.-Features:...

 (Java SE 7)
299 Java Contexts and Dependency Injection (Weld)
301 JSF Portlet Bridge
303 Bean Validation
Bean Validation
Java Bean Validation is a framework that has been approved by the JCP as of 16 November 2009 and is accepted as part of the Java EE 6 specification. Bean Validation defines a metadata model and API for JavaBean validation. The metadata source is annotations, with the ability to override and extend...

307 Network Mobility and Mobile Data API (not official as of July, 20th, 2007 but official release is planned for 2. Q. 2008
308 Annotations
Java annotation
An annotation, in the Java computer programming language, is a special form of syntactic metadata that can be added to Java source code. Classes, methods, variables, parameters and packages may be annotated...

 on Java Types (Java SE 8)
311 Java API for RESTful Web Services
JAX-RS
JAX-RS: Java API for RESTful Web Services is a Java programming language API that provides support in creating web services according to the Representational State Transfer architectural style...

 (JAX-RS) 1.0 and 1.1
314 JavaServer Faces
JavaServer Faces
JavaServer Faces is a Java-based Web application framework intended to simplify development integration of web-based user interfaces....

 (JSF) 2.0
316 Java Platform, Enterprise Edition
Java Platform, Enterprise Edition
Java Platform, Enterprise Edition or Java EE is widely used platform for server programming in the Java programming language. The Java platform differs from the Java Standard Edition Platform in that it adds libraries which provide functionality to deploy fault-tolerant, distributed, multi-tier...

 (Java EE) 6
317 Java Persistence API
Java Persistence API
The Java Persistence API, sometimes referred to as JPA, is a Java programming language framework managing relational data in applications using Java Platform, Standard Edition and Java Platform, Enterprise Edition....

 (JPA) 2.0
325 IMS Communication Enablers (ICE) (See IMS
IP Multimedia Subsystem
The IP Multimedia Subsystem or IP Multimedia Core Network Subsystem is an architectural framework for delivering Internet Protocol multimedia services. It was originally designed by the wireless standards body 3rd Generation Partnership Project , as a part of the vision for evolving mobile...

)
901 The Java Language
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

 Specification, Third Edition (JLS) (as of J2SE 5.0 incorporates changes from JSRs 14, 41, 133, 175, 201, and 204)
907 Java Transaction API
Java Transaction API
The Java Transaction API is one of the Java Enterprise Edition APIs allowing distributed transactions to be done across multiple XA resources in a Java environment. JTA is a specification developed under the Java Community Process as JSR 907...

 (JTA) 1.0 and 1.1
912 Java 3D
Java 3D
Java 3D is a scene graph-based 3D application programming interface for the Java platform. It runs atop either OpenGL or Direct3D. Since version 1.2, Java 3D has been developed under the Java Community Process....

 API 1.3
913 Java Community Process (JCP) 2.0, 2.1 & 2.5.
914 Java Message Service
Java Message Service
The Java Message Service API is a Java Message Oriented Middleware API for sending messages between two or more clients. JMS is a part of the Java Platform, Enterprise Edition, and is defined by a specification developed under the Java Community Process as JSR 914...

 (JMS) API 1.0 and 1.1
924 Java Virtual Machine
Java Virtual Machine
A Java virtual machine is a virtual machine capable of executing Java bytecode. It is the code execution component of the Java software platform. Sun Microsystems stated that there are over 4.5 billion JVM-enabled devices.-Overview:...

 Specification, Second Edition (JVM) (as of J2SE 5.0).
926 Java 3D
Java 3D
Java 3D is a scene graph-based 3D application programming interface for the Java platform. It runs atop either OpenGL or Direct3D. Since version 1.2, Java 3D has been developed under the Java Community Process....

 API 1.5

Criticism

The JCP's executive board has been characterized as a "rubber stamp organization" since Oracle acquired Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

, the original developer of the language. The Apache Software Foundation
Apache Software Foundation
The Apache Software Foundation is a non-profit corporation to support Apache software projects, including the Apache HTTP Server. The ASF was formed from the Apache Group and incorporated in Delaware, U.S., in June 1999.The Apache Software Foundation is a decentralized community of developers...

resigned its seat on the board in December 2010 because Oracle was unwilling to license a compatibility kit for Apache's version of Java.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK