Proyecto de servidor de aplicaciones
GlassFish es un proyecto de servidor de aplicaciones de plataforma Jakarta EE de código abierto iniciado por Sun Microsystems , luego patrocinado por Oracle Corporation , y ahora en Eclipse Foundation y respaldado por OmniFish, Fujitsu y Payara. [2] La versión compatible con Oracle se llamó Oracle GlassFish Server. GlassFish es software libre e inicialmente tenía doble licencia bajo dos licencias de software libre : la Licencia de Desarrollo y Distribución Común (CDDL) y la Licencia Pública General GNU (GPL) con la excepción Classpath . Después de haber sido transferido a Eclipse, GlassFish permaneció con doble licencia, pero la licencia CDDL fue reemplazada por la Licencia Pública Eclipse (EPL). [3]
Descripción general
GlassFish es la implementación de Eclipse de Jakarta EE (anteriormente la implementación de referencia de Oracle) y, como tal, es compatible con Jakarta REST , Jakarta CDI , Jakarta Security, Jakarta Persistence , Jakarta Transactions , Jakarta Servlet , Jakarta Faces , Jakarta Messaging , etc. Esto permite a los desarrolladores crear aplicaciones empresariales que sean portátiles y escalables, y que se integren con tecnologías heredadas. También se pueden instalar componentes opcionales para servicios adicionales.
GlassFish, que se basa en un núcleo modular impulsado por OSGi , se ejecuta directamente sobre la implementación de Apache Felix . También se ejecuta con los entornos de ejecución Equinox OSGi o Knopflerfish OSGi. HK2 abstrae el sistema de módulos OSGi para proporcionar componentes, que también se pueden ver como servicios. Dichos servicios se pueden descubrir e inyectar en tiempo de ejecución.
GlassFish se basa en el código fuente publicado por Sun y el sistema de persistencia TopLink de Oracle Corporation . Utiliza un derivado de Apache Tomcat como contenedor de servlets para ofrecer contenido web, con un componente adicional llamado Grizzly que utiliza E/S sin bloqueo (NIO) de Java para lograr escalabilidad y velocidad.
Lanzamientos
- Octubre de 2003: Sun Microsystems lanzó Sun ONE Application Server 7 [4] [5] , que es compatible con la especificación J2EE 1.3. Se basa en el servidor web iPlanet y en la implementación de referencia J2EE [6]. Se puede descargar una versión básica de forma gratuita, pero no es de código abierto.
- Marzo de 2004: Sun Microsystems lanzó Sun Java System Application Server 8 [7], que es compatible con la especificación J2EE 1.4. En junio de 2004 se lanzó la actualización 1. [8] Se puede descargar una versión básica de forma gratuita, pero no es de código abierto.
- 8 de febrero de 2005: Sun Microsystems lanzó Sun Java System Application Server 8.1, que es compatible con la especificación J2EE 1.4. Esta versión introdujo una importante actualización de la seguridad de los servicios web (un precursor de los posteriores JASPIC y Jakarta Authentication), mejoras en la interfaz gráfica de usuario de la consola de administración, compatibilidad con JavaServer Faces 1.1 (que en este momento todavía no forma parte de J2EE), mejoras en el rendimiento y compatibilidad con Java SE 5.0. [9] Se puede descargar una versión básica de forma gratuita, pero no es de código abierto.
- 6 de junio de 2005: Sun Microsystems lanzó el proyecto GlassFish publicando el código fuente revisado de Sun Java System Application Server. [10] [11] Las compilaciones de esta versión anterior se identifican en el registro como "sun-appserver-pe9.0". [12]
- 31 de enero de 2006: Sun Microsystems lanzó Sun Java System Application Server 8.2. [13] Esta versión introdujo la integración de la base de datos Derby y Fast Infoset para servicios web. [14] Se puede descargar una versión básica de forma gratuita, pero no es de código abierto.
- 4 de mayo de 2006: Project GlassFish lanzó la versión 1.0 (también conocida como Sun Java System Application Server 9.0) que admite la especificación Java EE 5.
- 15 de mayo de 2006: se lanza Sun Java System Application Server 9.0, derivado de GlassFish 1.0. [15]
- 8 de mayo de 2007: el proyecto SailFin se anunció en JavaOne como un subproyecto del proyecto GlassFish. El proyecto SailFin tiene como objetivo agregar la funcionalidad de servlet del Protocolo de inicio de sesión (SIP) a GlassFish. [16]
- 17 de septiembre de 2007: la comunidad GlassFish lanzó la versión 2.0 (también conocida como Sun Java System Application Server 9.1) con capacidades completas de agrupamiento empresarial y servicios web interoperables con Microsoft .
- 21 de enero de 2009: Sun Microsystems y la comunidad lanzaron la versión GlassFish 2.1 (también conocida como Sun GlassFish Enterprise Server 2.1) que sirve como base para Sailfin 1.0 (también conocido como Sun Communication Application Server 1.0).
- 28 de octubre de 2009: se lanzó SailFin 2.0 (también conocido como Sun Communication Application Server 2.0), que aprovecha GlassFish 2.1.1 (también conocido como Sun GlassFish Enterprise Server 2.1.1) y agrega una serie de características que incluyen alta disponibilidad, actualización continua, topología de red flexible, mejor protección contra sobrecarga, soporte para Diameter, capacidad de diagnóstico mejorada, archivos DCR basados en Java para el balanceador de carga y más.
- 10 de diciembre de 2009: se lanzó GlassFish 3.0 (también conocido como Sun GlassFish Enterprise Server 3.0). Al ser la implementación de referencia de Java EE, este fue el primer servidor de aplicaciones en implementar completamente Java EE 6 JSR 316. Sin embargo, JSR 316 fue aprobado con reservas. [17] En esta versión, GlassFish agrega nuevas características para facilitar la migración de Tomcat a GlassFish. [18] Las otras nuevas características principales están relacionadas con la modularidad (GlassFish v3 Prelude ya se entregaba con un entorno de ejecución Apache Felix OSGi ), el tiempo de inicio (unos segundos), la implementación en caso de cambio (proporcionada por los complementos NetBeans y Eclipse) y la preservación de sesiones en las reimplementaciones. [19]
- 25 de marzo de 2010: poco después de la adquisición de Sun Microsystems, Oracle publicó una hoja de ruta para las versiones 3.0.1, 3.1, 3.2 y 4.0 con temas relacionados con la agrupación en clústeres, la virtualización y la integración con Coherence y otras tecnologías de Oracle. La comunidad de código abierto no se vio afectada en ningún otro aspecto.
- 28 de febrero de 2011: Oracle Corporation lanzó GlassFish 3.1. Esta versión introdujo compatibilidad con aprovisionamiento basado en SSH, administración centralizada, agrupamiento y equilibrio de carga. Mantiene su compatibilidad con las especificaciones completas de la plataforma Java EE 6 y Web Profile.
- 28 de julio de 2011: Oracle Corporation lanzó GlassFish 3.1.1. Se trata de una versión de corrección de GlassFish 3.1 con actualizaciones de varios componentes (Weld, Mojarra, Jersey, EclipseLink, etc.), compatibilidad con JDK 7, compatibilidad con AIX y más.
- 29 de febrero de 2012: Oracle Corporation lanzó GlassFish 3.1.2. Esta versión incluye correcciones de errores y nuevas funciones, como mejoras en la consola de administración, recuperación de transacciones desde una base de datos y nuevas propiedades de grupo de subprocesos.
- 17 de julio de 2012: Oracle Corporation lanzó GlassFish 3.1.2.2. Se trata de una versión "micro" que soluciona algunos problemas excepcionales del producto. [20]
- 12 de junio de 2013: Oracle Corporation lanzó GlassFish 4.0. Esta importante versión brinda compatibilidad con Java Platform, Enterprise Edition 7. [21]
- 9 de septiembre de 2014: Oracle Corporation lanzó GlassFish 4.1. Esta versión incluye numerosas correcciones de errores (más de mil) y las últimas versiones de MR de CDI y WebSockets. [22]
- 7 de octubre de 2015: Oracle Corporation lanzó GlassFish 4.1.1. Esta versión incluye numerosas correcciones de errores y de seguridad, así como actualizaciones de muchos componentes subyacentes. [23]
- 31 de marzo de 2017: Oracle Corporation lanzó GlassFish 4.1.2. Esta versión incluye correcciones de errores. [24]
- 21 de septiembre de 2017: Oracle Corporation lanzó GlassFish 5.0. Esta versión incluye la implementación de referencia de código abierto de Java EE 8 y la especificación general de Java EE 8 y todas las especificaciones subyacentes (JAX-RS 2.1, Servlet 4.0, CDI 2.0, JSON-B 1.0, Bean Validation 2.0, etc.) están finalizadas y aprobadas. [25]
- 29 de enero de 2019: Eclipse Foundation lanzó GlassFish 5.1. Esta versión es técnicamente idéntica a GlassFish 5.0 de Oracle, pero está completamente desarrollada a partir del código fuente que Oracle transfirió a Eclipse Foundation y que posteriormente fue licenciado nuevamente a EPL. Al igual que GlassFish 5.0, 5.1 está certificado para Java EE 8, pero no tiene ningún estado de RI. El objetivo principal de esta versión es demostrar que todo el código fuente se ha transferido y que, de hecho, se puede desarrollar en un producto totalmente compatible. [26]
- 31 de diciembre de 2020: Eclipse Foundation lanzó GlassFish 6.0.0. Esta versión es funcionalmente idéntica a GlassFish 5.1, pero implementa Jakarta EE 9. [27] Jakarta EE 9 es funcionalmente idéntica a Jakarta EE 8 (que es funcionalmente idéntica a Java EE 8), pero su paquete y varias constantes cambiaron de javax.* a jakarta.*
- 5 de mayo de 2021: Eclipse Foundation lanzó GlassFish 6.1.0. Esta versión es funcionalmente idéntica a GlassFish 6.0.0, pero implementa Jakarta EE 9.1. Jakarta EE 9.1 es funcionalmente idéntica a Jakarta EE 9 (que es funcionalmente idéntica a Jakarta EE 8 y Java EE 8), pero es compatible con JDK 11. Esta versión requiere JDK 11.
- 28 de agosto de 2021: Eclipse Foundation lanzó GlassFish 6.2.1. Esta versión ha mejorado la compatibilidad con JDK 17 e incluye un nuevo componente, Eclipse Exousia, la implementación independiente de la autorización de Jakarta. GlassFish 6.2.1 se compila con JDK 11 a JDK 17
- 14 de diciembre de 2022: Eclipse Foundation lanzó GlassFish 7.0.0. Esta es la primera versión que contiene una refactorización más amplia y limpieza de código, una gran cantidad de correcciones de errores y también nuevas características. [28] Implementa la nueva especificación de concurrencia de Jakarta y es compatible con JDK 11, pero recomienda el uso de JDK17.
Hoja de ruta y fin del soporte comercial de Oracle
La versión comercialmente soportada de GlassFish era conocida como Oracle GlassFish Server , [29] anteriormente Sun GlassFish Enterprise Server, y anteriormente Sun Java System Application Server (SJSAS) tiene una historia, junto con otro software de iPlanet , que se remonta a Netscape Application Server . Esto incluye código de otras empresas como Oracle Corporation para TopLink Essentials. Se incluye el soporte de SIP Servlet de Ericsson , la versión de código abierto es SailFish, en desarrollo hacia JSR-289. [30] En 2010, la diferencia entre la edición comercial y la de código abierto ya era bastante pequeña. [30]
El 4 de noviembre de 2013, Oracle anunció la hoja de ruta futura para Java EE y Glassfish Server, con una edición de código abierto 4.1 planificada y continuas actualizaciones de código abierto para GlassFish pero con el fin del soporte comercial de Oracle. [31] [32] En cambio, se ha alentado a los clientes comerciales a realizar la transición al producto alternativo de Oracle, Oracle WebLogic Server .
El código abierto GlassFish continuó bajo Oracle hasta la versión 5.0 (la implementación de referencia para Java EE 8), después de lo cual el código fuente fue donado a la Fundación Eclipse, [33] que lanzó la versión 5.1, técnicamente idéntica pero con nueva licencia. [26] En Eclipse, Payara lidera el proyecto GlassFish, con el apoyo de Oracle y Red Hat. [2]
Se había planeado lanzar GlassFish 5.2 como una implementación compatible con Jakarta EE 8, pero nunca se lanzó. Jakarta EE 8 es funcionalmente idéntico a Java EE 8, pero se creó a través del Proceso de especificación de la Fundación Eclipse (EFSP). [34]
El desarrollo de GlassFish 7 fue patrocinado en gran medida [35] por la empresa estonia OmniFish, que también proporciona soporte comercial para GlassFish una vez más. [36] [37]
Servidor Payara
En respuesta al anuncio de Oracle de finalizar el soporte comercial para GlassFish, [38] [39] [40] se creó y lanzó una bifurcación llamada Payara Server en octubre de 2014. Payara Server es de código abierto bajo las mismas licencias que GlassFish, pero tiene soporte comercial opcional de Payara Services Ltd., a través del proyecto Payara Enterprise. [39]
Véase también
Otros servicios basados en Java y con licencia CDDL:
Otros servidores de aplicaciones de Jakarta EE:
Referencias
- ^ "Versión 7.0.17". 30 de agosto de 2024. Consultado el 21 de septiembre de 2024 .
- ^ ab "Eclipse GlassFish". proyectos.eclipse.org .
- ^ Beaton, Wayne (10 de mayo de 2018). "Eclipse GlassFish". projects.eclipse.org .
- ^ "Notas de la versión de Sun ONE Application Server 7".
- ^ "Se estrena Sun ONE Application Server 7". 28 de octubre de 2002.
- ^ "Java Live | 30 de julio de 2002". developer.java.sun.com . Archivado desde el original el 4 de febrero de 2003. Consultado el 11 de enero de 2022 .
- ^ "Notas de la versión de Sun Java System Application Server Platform Edition 8".
- ^ "Notas de la versión de Sun Java System Application Server Platform Edition 8 Update 1". docs.oracle.com . Consultado el 14 de abril de 2023 .
- ^ Sharples, Rich (5 de febrero de 2005). "Se anuncia Sun Java System Application Server 8.1 2005Q1". TheServersSide.com . Archivado desde el original el 19 de abril de 2021.
- ^ "FishEye: Navegando por glassfish/". fisheye5.cenqua.com . Archivado desde el original el 3 de febrero de 2006. Consultado el 11 de enero de 2022 .
- ^ "Desarrollo y construcción del proyecto GlassFish con NetBeans". netbeans.org . Archivado desde el original el 28 de octubre de 2005 . Consultado el 11 de enero de 2022 .
- ^ "Inicio del servidor".
- ^ Ottinger, Joseph (31 de enero de 2006). "Se ha publicado Sun Java System Application Server PE 8.2". TheServerSide.com . Archivado desde el original el 19 de abril de 2021.
- ^ "Novedades de la versión 8.2 (Notas de la versión de Sun Java System Application Server Platform Edition 8.2)".
- ^ Lynch, Regina (15 de mayo de 2006). "Se ha publicado Sun Java System Application Server PE 9.0". TheServerSide.com . Archivado desde el original el 19 de septiembre de 2020.
- ^ "El programa Java Community Process(SM) - JSR: Solicitudes de especificación de Java - detalle JSR n.° 289". jcp.org .
- ^ "O'Reilly Media - Capacitación en tecnología y negocios". www.oreillynet.com . Consultado el 22 de noviembre de 2018 .
- ^ "GlassFish v3 agrega soporte para válvulas de estilo Tomcat". Archivado desde el original el 6 de septiembre de 2008. Consultado el 7 de septiembre de 2008 .
- ^ Eduardo Pelegri-Llopart (5 de noviembre de 2008). "Estado de sesión guardado en GlassFish v3 Prelude".
- ^ "GlassFish Server 3.1.2.2 ya está disponible". blogs.oracle.com .
- ^ "Cobertura del lanzamiento de Java EE 7 / GlassFish 4.0". blogs.oracle.com .
- ^ "¡Lanzamiento de GlassFish Server Open Source Edition 4.1!". blogs.oracle.com .
- ^ Delabassee, David. "¡GlassFish 4.1.1 ya está disponible!". blogs.oracle.com .
- ^ Kalyandurga, Yamini. "Lanzamiento de GlassFish 4.1.2". blogs.oracle.com .
- ^ Delabassee, David. "¡Ya se lanzaron Java EE 8 y GlassFish 5.0!". blogs.oracle.com .
- ^ ab Guindon, Christopher. "Se lanza Eclipse GlassFish 5.1 - La Fundación Eclipse". www.eclipse.org .
- ^ "Resultados TCK".
- ^ "GlassFish 7.0 ofrece compatibilidad con JDK 17 y Jakarta EE 10". InfoQ . Consultado el 10 de enero de 2023 .
- ^ "Oracle GlassFish Server: Preguntas frecuentes" (PDF) .
- ^ ab "Bienvenido - Comunidad Oracle". community.oracle.com .
- ^ "Actualización de la hoja de ruta de Java EE y GlassFish Server". blogs.oracle.com .
- ^ McAllister, Neil (4 de noviembre de 2013). "¿Quieres un contrato de soporte para GlassFish 4.0? Mala suerte, dice Oracle". The Register .
- ^ Lyons, Will. "Avanzando con Eclipse GlassFish en Jakarta EE". blogs.oracle.com .
- ^ "Estado de Yakarta EE 8". 18 de marzo de 2019.
- ^ "Contribuidores a eclipse-ee4j/glassfish". GitHub . Consultado el 14 de abril de 2023 .
- ^ "OmniFish ofrece soporte para Jakarta EE 10 y GlassFish 7". InfoQ . Consultado el 14 de abril de 2023 .
- ^ "Eclipse GlassFish". 31 de marzo de 2023. Consultado el 14 de abril de 2023 a través de GitHub.
- ^ "Inicio". Payara Services Ltd. Consultado el 27 de noviembre de 2023 .
- ^ ab "Actualización de la hoja de ruta del servidor Java EE y GlassFish (The Aquarium)".
- ^ "GlassFish se convirtió en el servidor de aplicaciones estrella y luego cambió el nombre: blog de Adam Bien".
Lectura adicional
- Payara. «Notas de la versión · Servidor Payara». Archivado desde el original el 28 de febrero de 2018. Consultado el 27 de febrero de 2018 .
Enlaces externos
- Sitio web oficial
- Servidor Payara