Saltar al contenido

Perfil web Java EE frente a plataforma completa Java EE

Este team redactor ha pasado horas investigando la resolución a tu pregunta, te compartimos la respuesta y deseamos resultarte de gran apoyo.

Solución:

Aquí hay una bonita imagen que lo explica. El perfil web es un subconjunto de Java EE y su propósito es permitir a los desarrolladores crear aplicaciones más livianas que se puedan usar dentro de un contenedor de servlets simple (como Tomcat o Jetty).

ingrese la descripción de la imagen aquí

Transición desde Oracle Corp para Fundación Eclipse

A finales de 2017, Oracle cedió la responsabilidad de Java EE a la Fundación Eclipse. Las versiones futuras posteriores a Java EE 8 se conocerán como Eclipse Enterprise para Java (EE4J). O Proyecto EE4J. O tal vez EE. UU. Siguiente. O Yakarta EE. La marca ha ido cambiando.

Los equipos de Eclipse y la comunidad de Yakarta EE son libres de redefinir o reorganizar las distintas partes de EE. Por lo tanto, es posible que la discusión de Java EE Web Profile versus Java EE Full Platform a continuación no se aplique directamente a Jakarta EE 9 y versiones posteriores.

Impacto de los cambios en Java SE

En Java SE 11, se eliminan algunos módulos. Las partes relacionadas con Java EE se están mudando a un nuevo hogar en el proyecto Jakarta EE. Otros, como CORBA, se han ofrecido para su adopción por parte de cualquier organización interesada. Ver JEP 320.

Yakarta EE 9

Plataforma EE de Yakarta 9 está en desarrollo, a partir de 2020-06.

La atención se centra en eliminar la marca registrada Java nombre de las diversas especificaciones. Esto incluye pasar a un nuevo nombre de paquete de jakarta.*.

Para citar la página del plan de lanzamiento de Jakarta EE 9:

El objetivo de la versión Jakarta EE 9 es ofrecer un conjunto de especificaciones funcionalmente similares a Jakarta EE 8 pero en el nuevo espacio de nombres Jakarta EE 9 jakarta.*.

Además, la versión Jakarta EE 9 elimina las especificaciones de Jakarta EE 8 que eran antiguas, opcionales o obsoletas para reducir el área de superficie de las API para garantizar que sea más fácil para los nuevos proveedores ingresar al ecosistema, así como reducir la carga sobre la implementación, migración y mantenimiento de estas antiguas API.

Principalmente, el equipo del proyecto ve a Jakarta EE 9 como un lanzamiento de herramientas …

Aunque probablemente pueda esperar compatibilidad ascendente en el comportamiento, los cambios de nombre significarán que la versión 9 y posteriores serán no ser un reemplazo binario directo. No es el fin del mundo. Esto puede significar tan poco como cambiar el import nombres de paquetes en sus diversos archivos de clases. Lea esto y esto para obtener detalles y enlaces.

Yakarta EE 8

Plataforma 8 de Yakarta EE es prácticamente idéntico a Java EE 8.

Como parte de la transición de Oracle, el equipo de Eclipse relanzó Java EE 8 como Yakarta EE 8 usando su nueva infraestructura para el código de vivienda y haciendo construcciones. El mismo comportamiento de EE, el mismo nombre interno y la misma estructura de paquete. Por lo tanto, los problemas que se analizan a continuación sobre Java EE Web Profile frente a Java EE Full Platform siguen siendo válidos.

Java EE 8

Java EE 8 se lanzó en 2017. Consulte el historial de versiones.

Consulte JSR 366: Java Platform, Enterprise Edition 8 (Java EE 8) Specification para obtener más detalles.

Java EE es un superconjunto de Java Standard Edition (Java SE). Cualquier implementación de Java EE 8 es también una implementación de Java SE 8 o posterior.

Consulte una lista de tecnologías Java EE 8 publicadas por Oracle, con enlaces a JSR y especificaciones.

Todos los perfiles

Las siguientes tecnologías deben estar presentes en todos los perfiles de Java EE:

• Java SE versión 8 (o posterior)

• Anotaciones del ciclo de vida de recursos y componentes definidas por la especificación de anotaciones comunes (recurso, recursos, postconstrucción, predestrucción)

• JNDI “java:” contexto de nomenclatura

• API de transacciones de Java (JTA)

Perfil web

El perfil web es un subconjunto específico de la plataforma Java EE completa, que se centra en los elementos de uso común. Implementado por productos como Apache TomEE o casi así con Embarcadero de Eclipse más complementos.

• Elementos de nivel base requeridos por todos los perfiles de Java EE (enumerados arriba: Java SE 8, anotaciones del ciclo de vida, JNDI java: contexto y JTA)

• Servlet 4.0 (JSR 369)

• JavaServer Pages (JSP) 2.3

• Lenguaje de expresión (EL) 3.0 (JSR 341)

• Soporte de depuración para otros idiomas (JSR-45) 1.0

• Biblioteca de etiquetas estándar para JavaServer Pages (JSTL) 1.2

• JavaServer Faces (JSF) 2.3 (JSR 372)

• API de Java para servicios web RESTful (JAX-RS) 2.1

• API de Java para WebSocket (WebSocket) 1.1 (JSR 356)

• API de Java para procesamiento JSON (JSON-P) 1.1 (JSR 374)

• API de Java para enlaces JSON (JSON-B) 1.0 (JSR 367)

• Anotaciones comunes para la plataforma Java (JSR-250) 1.3 • Enterprise JavaBeans (EJB) 3.2 Lite

• API de transacciones de Java (JTA) 1.2

• API de persistencia de Java (JPA) 2.2

• Bean Validation 2.0 (JSR 380)

• Frijoles gestionados 1.0

• Interceptores 1.2

• Contextos e inyección de dependencia para la plataforma Java EE 2.0

• Inyección de dependencia para Java 1.0

• API de seguridad Java EE 1.0

• Interfaz de proveedor de servicios de autenticación de Java para contenedores (JASPIC) 1.1

Solo servlet

Como alternativa más ligera al uso de una implementación de perfil web, puede comenzar con una implementación de Java Servlet / JSP como Apache Tomcat o Embarcadero de Eclipse. Si bien no es un perfil oficial, este enfoque es muy popular. A veces conocido como contenedor web.

• servidor web HTTP

• Servlet

• Páginas de JavaServer (JSP)

• Lenguaje de expresión (EL)

• WebSocket

• JNDI

Al utilizar esta configuración, puede agregar selectivamente bibliotecas independientes para beneficiarse selectivamente de las diversas tecnologías Java EE. Por ejemplo, para mi propio trabajo creando aplicaciones web con Vaadin Framework, utilizo Java SE en lugar de EE, con Tomcat, y agrego un Validación de Bean biblioteca de implementación manualmente, ya que eso es todo lo que necesito de la lista de tecnologías de Java EE.

Java EE completo

Se requieren las siguientes tecnologías:

• Todos los elementos del perfil web

• EJB 3.2 (excepto para beans de entidad EJB y EJBQL asociado, que se han hecho opcionales)

• JMS 2.0

• JavaMail 1.6

• Conector 1.7

• WebServices 1.4

• Utilidades de simultaneidad 1.0

• Lote1.0

• Gestión de Java EE 1.1

• JACC 1.5

• Depuración JSP 1.0

• Metadatos de servicios web 2.1

Las siguientes tecnologías son opcionales:

• EJB 3.2 y beans de entidad anteriores y EJB QL asociado

• JAX-RPC 1.1

• JAXR 1.0

• Implementación de Java EE 1.2

Diagrama

A continuación, se muestra un diagrama para mostrar los grupos de requisitos anidados.

diagrama de grupos anidados de diversas tecnologías requeridas por Java SE 8, contenedores web, Java EE 8 Web Profile, Java EE 8 Required y Java EE 8 Optional

La lista sobre este diagrama puede ser más precisa; este diagrama no se ha verificado dos veces.

La especificación Java EE 6 (JSR 316) contiene las siguientes listas:

Requisitos completos del producto Java EE

Se requieren las siguientes tecnologías:

  • EJB 3.1
  • Servlet 3.0
  • JSP 2.2
  • EL 2.2
  • JMS 1.1
  • JTA 1.1
  • JavaMail 1.4
  • Conector 1.6
  • Servicios web 1.3
  • JAX-RPC 1.1
  • JAX-WS 2.2
  • JAX-RS 1.1
  • JAXB 2.2
  • JAXR 1.0
  • Gestión de Java EE 1.1
  • Implementación de Java EE 1.2
  • JACC 1.4
  • JASPIC 1.0
  • Depuración JSP 1.0
  • JSTL 1.2
  • Metadatos de servicios web 2.1
  • JSF 2.0
  • Anotaciones comunes 1.1
  • Persistencia de Java 2.0
  • Validación de Bean 1.0
  • Frijoles gestionados 1.0
  • Contextos e inyección de dependencias para Java EE 1.0
  • Inyección de dependencia para Java 1.0

No hay tecnologías opcionales.

Definición de perfil web

Las siguientes tecnologías son componentes necesarios del perfil web:

  • Servlet 3.0
  • Páginas de JavaServer (JSP) 2.2
  • Lenguaje de expresión (EL) 2.2
  • Soporte de depuración para otros idiomas (JSR-45) 1.0
  • Biblioteca de etiquetas estándar para JavaServer Pages (JSTL) 1.2
  • JavaServer Faces (JSF) 2.0
  • Anotaciones comunes para la plataforma Java (JSR-250) 1.1
  • Enterprise JavaBeans (EJB) 3.1 Lite
  • API de transacciones de Java (JTA) 1.1
  • API de persistencia de Java (JPA) 2.0
  • Validación de Bean 1.0
  • Frijoles gestionados 1.0
  • Interceptores 1.1
  • Contextos e inyección de dependencia para la plataforma Java EE 1.0
  • Inyección de dependencia para Java 1.06

No hay componentes opcionales en el perfil web.

Para Java EE 7, hay una lista de todas las tecnologías EE, que también muestra cuáles están incluidas en el perfil web. Algunas tecnologías que antes solo estaban disponibles en el perfil completo ahora se incluyen en el perfil web, como JAX-RS.

Si estás de acuerdo, tienes la habilidad dejar un artículo acerca de qué le añadirías a esta reseña.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *