Arquivo de 26 de Setembro de 2006
JEE 5.0, JSR e o JCP
O que é o JEE? O Java Enterprise Edition não é um produto, nem um servidor de aplicação, muito menos uma arquitetura de software.
O JEE é uma especificação JSR (Java Specification Request), i.e, um esforço de padronização realizado por diversas empresas e arquitetos dentro de um tema de interesse Java. As JSRs são mantidas por uma comunidade chamada JCP (Java Community Process), responsável pela padronização da tecnologias Java. Empresas como a SUN, IBM, Borland, BEA, Oracle, Fujitsu, entre outras, são membros ativos do JCP.
O JEE é uma específicação JSR para a padronização de uma arquitetura Java. Cada versão do JEE possui uma JSR específica. Por exemplo, o JEE 5.0 está sob o JSR 244, enquanto o J2EE 1.4 está sob o JSR JSR 151.
O que torna o JEE tão amplo, entretanto? A especificação JEE 5.0, em verdade, é uma coleção de outras especificações, i.e, outras JSRs. O JEE pode ser entendido, então, como um conjunto de especificações coordenadas, que lidam com APIs para desenvolvimento Web, persistência de dados, envio de emails, interoperação com WebServices, conectores, transações e demais componentes de uma arquitetura corporativa.
A tabela resumo abaixo mostra, para cada versão J2EE (1.3, 1.4 e 5.0), as versões das principais APIs componentes do JEE e a JSR associada a cada API.
| Tecnologia | Descrição | J2EE 1.3 | J2EE 1.4 | JEE 1.5 |
| JSP | Java Server Pages - Tecnologia de páginas dinâmicas Web | JSR-53: 1.2 | JSR-152: 2.0 | JSP-245: 2.1 |
| Servlets | Tecnologia de objetos de mediação de requisições Web | JSR-53: 2.3 | JSR-154: 2.4 | JSR-154 Maintanence Release: 2.5 |
| JSF | Java Server Faces - Tecnologia de toolkits de componentes Web | Ausente | Ausente | JSR 252: 1.2 |
| EJB | Enterprise Java Beans - Session Beans, Entity Beans e Message Driven Beans - Tecnologia de objetos distribuídos | JSR-19: 2.0 | JSR-153: 2.1 | JSP-220: 3.0 |
| JDBC | Java Database Connectivity - Tecnologia de acesso a bancos de dados relacionais | Sem JSR - Versão: 2.0 | JSR-54: 3.0 | JSR-54: 3.0 |
| Java Mail | Tecnologia de suporte a protocolos de email como IMAP, SMTP e POP3 | JSR-904: 1.2 | JSR-919: 1.3 | JSR-919: 1.4 |
| JMS | Java Message Service - Tecnologia de suporte a mensagens | JSR-914: 1.1 | JSR-914: 1.1 | JSR-914: 1.1 |
| JCA | Java Connector Architecture - Tecnologia de suporte a conectores para interoperabilidade de aplicações | JSR-16: 1.0 | JSR-112: 1.5 | JSR-112: 1.5 |
| Web Services - JAX-WS 2.0 | APIs para interoperabilidade de aplicações através de Web Services | Ausente | Ausente | JSR-224: 2.0 |
(*) O JAX-WS sucedeu a antiga JAX-RPC, presente no J2EE 1.4. Dentre as novidades, a JAX-WS suporta os padrões WSDL 1.2 e SOAP 1.2.
Mais informações sobre o JEE 5.0 podem ser baixadas dos seguinte sites:
Os servidores de aplicação que possuem suporte ao novo JEE 5.0 (no momento de criação deste artigo) estão abaixo.
- SUN GlassFish - Servidor OpenSource com suporte completo a pilha JEE 5
- SUN Java System Application Server 9.0- Servidor comercial com suporte completo a pilha JEE 5
- JBOSS Seam - Servidor OpenSource com suporte parcial (JSF e EJB 3.0 somente)