Processo da comunidade Java - Java Community Process

Banner do Java Community Process em JavaOne 2006.jpg

O Java Community Process ( JCP ), estabelecido em 1998, é um mecanismo formalizado que permite às partes interessadas desenvolver especificações técnicas padrão para a tecnologia Java . Qualquer pessoa pode se tornar um Membro JCP preenchendo um formulário disponível no site do JCP . A associação ao JCP para organizações e entidades comerciais exige taxas anuais - mas é gratuita para indivíduos.

O JCP envolve o uso de Java Specification Requests ( JSRs ) - os documentos formais que descrevem as especificações e tecnologias propostas para adicionar à plataforma Java . As revisões públicas formais dos JSRs ocorrem antes que um JSR se torne final e o Comitê Executivo do JCP vote nele. Um JSR final fornece uma implementação de referência que é uma implementação gratuita da tecnologia na forma de código-fonte e um Kit de compatibilidade de tecnologia para verificar a especificação da API .

Um JSR descreve o próprio JCP. Em 2020, JSR 387 descreve a versão atual (2.11) do JCP.

Lista de JSRs

Existem centenas de JSRs. Alguns dos JSRs mais visíveis incluem:

JSR # Especificação ou Tecnologia Implementações de referência Outras implementações
1 Especificação em tempo real para Java (RTSJ) 1.0
3 Java Management Extensions (JMX) 1.0, 1.1 e 1.2
5 API Java para processamento XML (JAXP) 1.0
8 Especificação OSGI Open Services Gateway
9 Jiro (Especificação de Arquitetura de Gerenciamento Federado) 1.0
12 Java Data Objects (JDO) 1.0
13 BigDecimal aprimorado ( plataforma Java, edição padrão # java.math )
14 Adicionar tipos genéricos à linguagem de programação Java (a partir de J2SE 5.0)
16 Arquitetura do Conector Java EE (JCA) 1.0
19 Enterprise JavaBeans (EJB) 2.0
22 Especificação da API JAIN SLEE (JSLEE) 1.0
30 Configuração de dispositivo limitado conectado (CLDC) 1.0 para Java ME
31 Arquitetura Java para XML Binding (JAXB) 1.0
32 Especificação de API JAIN SIP (JSIP) 1.0, 1.1 e 1.2 para Java ME
36 Connected Device Configuration (CDC) 1.0 para Java ME
37 Perfil de dispositivo de informação móvel (MIDP) 1.0 para Java ME
40 Java Metadata Interface (JMI) 1.0
41 Um recurso de declaração simples (a partir de J2SE 1.4)
47 Especificação da API Logging (a partir de J2SE 1.4)
48 Especificação de serviços WBEM (a partir de J2SE 1.4)
51 E / S sem bloqueio (NIO) (a partir de J2SE 1.4) Grizzly , Netty
52 JavaServer Pages Standard Tag Library (JSTL) 1.0 e 1.1
53 Especificações do Java Servlet 2.3 e JavaServer Pages (JSP) 1.2
54 Java Database Connectivity (JDBC) 3.0
56 Protocolo de inicialização de rede Java e API (JNLP) 1.0, 1.5 e 6.0 ( Java Web Start )
58 Java 2 Platform, Enterprise Edition (J2EE) 1.3
59 Java 2 Platform, Standard Edition (J2SE) 1.4 (Merlin)
63 API Java para processamento XML (JAXP) 1.1 e 1.2
68 Plataforma Java, Micro Edition (Java ME) 1.0
73 API Java Data Mining (JDM) 1.0
75 Pacotes opcionais de PDA para a plataforma J2ME
77 Gestão J2EE
80 API Java USB
82 APIs Java para Bluetooth
88 Implementação de aplicativos Java EE
91 API OSS Trouble Ticket
93 API Java para registros XML (JAXR) 1.0
94 API Java Rules Engine
102 Java Document Object Model (JDOM) 1.0
110 APIs Java para WSDL (WSDL4J) 1.0
112 Arquitetura do Conector Java EE (JCA) 1.5
113 Java Speech API 2 (JSAPI2)
114 Implementações do conjunto de linhas Java Database Connectivity (JDBC)
116 SIP Servlet API 1.0
118 Perfil de dispositivo de informação móvel (MIDP) 2.0 para Java ME
120 API de mensagens sem fio (WMA)
121 API de isolamento de aplicativo
127 JavaServer Faces (JSF) 1.0 e 1.1
133 Revisão do modelo de memória Java e especificação de thread
135 API Java Mobile Media (MMAPI) para Java ME
139 Configuração de dispositivo limitado conectado (CLDC) 1.1 para Java ME
140 API Service Location Protocol (SLP) para Java
141 API Session Description Protocol (SDP) para Java
151 Java 2 Platform, Enterprise Edition (J2EE) 1.4
152 JavaServer Pages (JSP) 2.0
153 Enterprise JavaBeans (EJB) 2.1
154 Especificações do Java Servlet 2.4 e 2.5
160 Java Management Extensions (JMX) API remota 1.0
163 Java Platform Profiling Architecture (JPPA), que inclui (entre outras especificações) a especificação da Java Virtual Machine Tools Interface
166 Simultaneidade Utilidades (a partir de J2SE 5.0 java.util.concurrent , java.util.concurrent.atomic e java.util.concurrent.locks )
168 Especificação de portlet 1.0
170 API de repositório de conteúdo para Java (JCR) 1.0
172 Especificação de serviços da Web para Java ME
173 StAX (API de streaming para XML)
175 Um recurso de metadados para a linguagem de programação Java
176 Java 2 Platform, Standard Edition (J2SE) 5.0 (Tiger)
177 API de serviços de segurança e confiança para J2ME (SATSA)
179 Location API 1.0 para Java ME
180 API Session Initiation Protocol (SIP) para Java ME
181 Metadados de serviços da web para a plataforma Java
184 API de gráficos 3D para celular para Java ME 1.0 e 1.1
185 Tecnologia Java para a indústria sem fio (JTWI)
187 Mensagens instantâneas ( Java ME e Java SE )
198 Uma API de extensão padrão para ambientes de desenvolvimento integrado
199 API Java Compiler
200 Formato de transferência de rede Pack200 para arquivos Java
201 Extensão da linguagem de programação Java com enumerações, autoboxing, aprimorado para loops e importação estática (a partir do J2SE 5.0)
202 Atualização de especificação de arquivo de classe Java
203 Mais E / S sem bloqueio (Java) (NIO2)
204 Suporte a caracteres suplementares Unicode (a partir de J2SE 5.0 adiciona suporte para Unicode 3.1)
205 Wireless Messaging API 2.0 (WMA) 2.0
206 API Java para processamento XML (JAXP) 1.3
208 Java Business Integration (JBI) 1.0
211 API Content Handler
215 Java Community Process (JCP) 2.6
218 Connected Device Configuration (CDC) 1.1 para Java ME
219 Perfil da Fundação 1.1
220 Enterprise JavaBeans (EJB) 3.0
221 Java Database Connectivity (JDBC) 4.0
222 Arquitetura Java para XML Binding (JAXB) 2.0
223 Scripting para a plataforma Java para Java SE 6
224 API Java para XML Web Services (JAX-WS), sucessor de JAX-RPC
225 API XQuery para Java (XQJ)
226 API de gráficos vetoriais 2D escalonáveis para Java ME
229 API de pagamento (PAPI)
231 Java Bindings para OpenGL
234 API de suplementos avançados de multimídia para Java ME
235 Objetos de dados de serviço (SDO)
239 Java Bindings para OpenGL ES
240 Especificação da API JAIN SLEE (JSLEE) 1.1
241 A linguagem de programação Groovy
243 Java Data Objects (JDO) 2.0
244 Plataforma Java, Enterprise Edition (Java EE) 5
245 JavaServer Pages (JSP) 2.1
247 API Java Data Mining (JDM) 2.0
248 Arquitetura de serviço móvel
249 Arquitetura de serviço móvel 2
250 Anotações comuns para a plataforma Java (para o recurso de metadados para Java )
252 JavaServer Faces (JSF) 1.2
253 API de telefonia móvel (MTA)
255 Java Management Extensions (JMX) 2.0
256 API Mobile Sensor
257 API de comunicação sem contato ( NFC )
260 Atualização de tecnologia de tag Javadoc
269 API de processamento de anotações plugáveis (para o recurso de metadados para Java )
270 Plataforma Java, Standard Edition (Java SE) 6 (Mustang)
271 Perfil de dispositivo de informação móvel (MIDP) 3.0 para Java ME
274 A linguagem de script BeanShell
275 Especificação das unidades (ver unidades de medida )
276 Metadados em tempo de design para componentes JavaServer Faces
277 Sistema de Módulo Java
280 API XML para Java ME
281 API de serviços IMS (consulte IMS )
282 Especificação em tempo real para Java (RTSJ) 1.1
283 API de repositório de conteúdo para Java (JCR) 2.0
286 Especificação de Portlet 2.0
289 SIP Servlet API 1.1
290 Linguagem Java e integração de marcação de interface de usuário XML (XML-UI)
291 Suporte de componente dinâmico para Java SE (consulte OSGi )
292 Compatível com linguagens digitadas dinamicamente na plataforma JavaTM
293 Location API 2.0 para Java ME
294 Suporte aprimorado de modularidade na linguagem de programação Java
296 Swing Application Framework (Java SE 7)
299 Contextos e injeção de dependência para a plataforma Java EE (CDI) Soldar OpenWebBeans
301 JSF Portlet Bridge
303 Validação de feijão Validador Hibernate
307 API de Mobilidade de Rede e Dados Móveis (não oficial em 20 de julho de 2007, mas o lançamento oficial está planejado para 2. Q. 2008
308 Anotações em tipos de Java (Java SE 8)
314 JavaServer Faces (JSF) 2.0 Mojarra JavaServer Faces Apache MyFaces
316 Plataforma Java, Enterprise Edition (Java EE) 6
317 Java Persistence API (JPA) 2.0 EclipseLink Hibernate , openJPA
322 Arquitetura do Conector Java EE (JCA) 1.6
325 IMS Communication Enablers (ICE) (Consulte IMS )
330 Dependency Injection para Java
336 Conteúdo da versão do Java SE 7 [OpenJDK 7] ?
337 Conteúdo da versão do Java SE 8 [OpenJDK 8] ?
338 Java Persistence API (JPA) 2.1 EclipseLink Hibernate , openJPA
343 Java Message Service 2.0 (JMS)
352 Java Batch IBM Java Batch JBeret , Spring Batch
354 API Java Money & Currency
356 API Java para WebSocket
365 Contextos e injeção de dependência para Java 2.0 Soldar
367 API Java para vinculação JSON (JSON-B) Eclipse Yasson Jackson
370 API Java para serviços da Web RESTful (JAX-RS) 2.1 Projeto Jersey
374 API Java para Processamento JSON 1.1 Eclipse JSON-P Jackson
376 Java Platform Module System (substitui 277
380 Bean Validation 2.0 Validador Hibernate
901 A Java Language Specification, Third Edition (JLS) (a partir do J2SE 5.0 incorpora alterações dos JSRs 14, 41, 133, 175, 201 e 204)
907 Java Transaction API (JTA) 1.0 e 1.1
912 Java 3D API 1.3
913 Java Community Process (JCP) 2.0, 2.1 e 2.5.
914 Java Message Service (JMS) API 1.0 e 1.1
924 Especificação de máquina virtual Java , segunda edição (JVM) (a partir de J2SE 5.0). OpenJDK
926 Java 3D API 1.5

Crítica

Um representante do JCP (extrema direita) fala à imprensa comercial durante um painel de discussão na conferência JavaOne em 2012

O conselho executivo do JCP foi caracterizado como uma " organização com carimbo de borracha " desde que a Oracle adquiriu a Sun Microsystems (o desenvolvedor original da linguagem Java ).

A Apache Software Foundation renunciou ao seu assento no conselho em dezembro de 2010 porque a Oracle não queria licenciar o Technology Compatibility Kit para a versão do Java da Apache.

Programa JCP e Prêmios da Indústria

Fonte:

2012 - Vencedores do 10º Prêmio JCP Anual
Prêmio Nomeado Contribuições Detalhes JSR # Ganhar?
Membro JCP / Participante do Ano London Java Community e SouJava Programa ″ Adote um JSR! ″ Suporte a desenvolvedores Java por meio do JCP. Ganhar!
Stephen Colebourne API de data e hora para Java . Abrangente e avançado. Trabalho incansável. 310
Markus Eisele Trabalho ativo entre a comunidade Java alemã e no JSR 342 Expert Group. 342
JUG Chennai Tornando-se a organização JCP mais ativa na Índia e uma organização de serviços competitiva no mercado comercial.
Werner Keil Energia incrível e participação em sete JSRs e também no Comitê Executivo.
Antoine Sabot-Durand
Excelente Spec Lead Victor Grazi,

Crédito Suiço

API Java Money & Currency Experiência dedicada e focada na solução de problemas que representam dinheiro e moedas . 354 Ganhar!
Michael Ernst Anotações em tipos Java Abordagem equilibrada; um ótimo exemplo de um JSR bem executado. 308
Nigel Deakin,

Oráculo

Java Message Service 2.0 Trabalho excelente, completo e inteligente mantendo o JMS 2 EG aberto e avançando em um grande ritmo. 343
Pete Muir,

chapéu vermelho

Contextos e injeção de dependência para Java EE 1.1 Atualizando voluntariamente para 2.8 no final de 2011 e mantendo o que já eram métodos transparentes na execução de seu Grupo de Especialistas. 346
JSR mais significativo Jitendra Kotamraju API para processamento JSON Um passo importante para trazer o Java para o mundo da web moderna. 353
Victor Grazi,

Crédito Suiço

API de dinheiro e moeda Novas maneiras de lidar com valores monetários e cálculos de moeda . Correção de erros críticos de formato e representação de números Java além dos valores monetários. 354
Mitch Upton Java State Management O potencial para melhorar a aparência dos servidores de aplicativos e serviços distribuídos em um futuro próximo, além de simplificar a implantação em ambientes de PaaS e nuvem. 350
Nigel Deakin Java Message Service 2 Modernize o JMS em um ritmo rápido. 343
Patrick Curran JCP.Next Definir a direção e os procedimentos para o JCP de próxima geração. 348 355 358 Ganhar!

Veja também

Notas

links externos