generar descompilar como archivo abrir java servlets java-9

java - como - descompilar war



¿Es Java 9 modularidad también para archivos WAR? (2)

Actualmente no hay enlaces entre Java EE y java 9 (jigsaw) módulos. Las futuras versiones de Java EE podrían introducir un comportamiento definido según las especificaciones sobre cómo interactuar con los módulos de jigsaw.

En este punto, todos los servidores de aplicaciones se ejecutan en "modo classpath" cuando se ejecutan en JDK9, lo que en la práctica significa que no utilizan rompecabezas.

En la mayoría de los casos, la introducción de información del módulo en su despliegue de guerra solo puede causar problemas de implementación, ya que JDK podría intentar cargarla de manera diferente a otras partes del servidor de aplicaciones. O ni siquiera podría hacer una diferencia, ya que la mayoría de los servidores de aplicaciones tienen una lógica personalizada para cargar archivos y clases.

Algunos servidores de aplicaciones que ya existen en la actualidad ya implementan algún tipo de modularidad como OSGi (GlassFish, Liberty) o jboss-modules (Wildfly). Pero en este momento, Jigsaw aún tiene algunas limitaciones para poder ejecutar tales sistemas modulares.

En resumen, hasta que haya una especificación de EE (probablemente 9+) que se actualice para describir cómo deben ejecutarse las implementaciones de EE en el tiempo de ejecución habilitado para Jigsaw, no existe una manera "oficial" de cómo debe comportarse dicha implementación. Hasta ese momento, cada servidor de aplicaciones puede implementar algún soporte personalizado para él, pero no será estándar.

Un servidor de aplicaciones Java EE 7, y específicamente un contenedor Servlet 3.1 debería permitirnos implementar un archivo WAR que contenga una aplicación web. Y un archivo WAR es esencialmente un JAR con descriptor de despliegue ( web.xml ) y un par de otros elementos.

Por otro lado, Java 9 introduce una noción de archivo JAR modular , es decir, un JAR con descriptor de module-info.class ( module-info.class ) que module-info.class un módulo en términos de proyecto Jigsaw.

Entonces, ¿puede un archivo WAR contener también un descriptor de módulo y crear un "archivo WAR modular"?

¿Ya existen servidores de aplicaciones capaces de aceptar la implementación de un "archivo WAR modular"?

En general, ¿cuál es el futuro de los contenedores servlet y los archivos WAR en términos de modularidad de Java 9?


Entonces, ¿puede un archivo WAR contener también un descriptor de módulo y crear un "archivo WAR modular"?

Sí puede. Dado que ahora podría ser esencialmente un archivo JAR modular con descriptores de implementación como web.xml .

En general, ¿cuál es el futuro de los contenedores servlet y los archivos WAR en términos de modularidad de Java 9?

Desde el aspecto de configuración dinámica del sistema de módulos,

Para la plataforma Java EE, en particular, el objetivo es habilitar un futuro estándar de archivo de guerra modular en el que los componentes de un archivo de guerra puedan ser módulos de desarrollador.

¿Ya existen servidores de aplicaciones capaces de aceptar la implementación de un "archivo WAR modular"?

Aunque actualmente no conozco ninguna de estas herramientas o servidores existentes, la capacidad de crear un Jar modular ya se ha agregado a las herramientas JMOD y JAR que proporcionan una visión futurista de la integración de los servidores de aplicaciones y el sistema de módulos.