Habilitando el soporte para Java EE en NetBeans 9

Por Victor Orozco
Publicado en Septiembre 2018


Revisado por Elder Moraes




Recientemente NetBeans presentó su primer gran lanzamiento bajo la fundación Apache:

View image on Twitter


En esta linea, una de las preguntas más frecuentes es:

¿Que pasó con el soporte para Java EE/C++/PHP/JavaME . . .?

Respuesta corta:

La primera donación de código hacia Apache incluyó unicamente la plataforma base de NetBeans y el soporte a Java SE, el resto de código esta planificado para subsecuentes donaciones de Oracle.

Respuesta larga:

Primero que nada, remitirse a la declaración oficial de Apache al respecto.


¿Significa esto que no sere capaz de programar aplicaciones Java EE en NetBeans 9?


Respuesta corta: No

Rspuesta larga: Actualmente Oracle ya ha realizado una segunda donación, y la mayoría de módulos considerados externos fueron incluidos. Como la declaración de Apache sugiere, podemos esperar la inclusión de esos módulos en futuros lanzamientos.


¿Es posible habilitar el soporte a Java EE en NetBeans 9?


Considerando que NetBeans ha sido modular desde siempre, es correcto esperar soporte hacia módulos antiguos en nuevas versiones de NetBeans. De hecho, este es el abordaje oficial para habilitar el soporte a Java EE en NetBeans 9mediante kits.

Consecuentemente, he preparado un tutorial para lograr esto. El tutorial ha sido enfocado/ejemplificado en Mac OS pero los pasos son los mismos para Linux y Windows, asi mismo se prueba la compatibilidad real utilizando dos servidores de aplicaciones con Java 8 y Java 10.




Descargando NetBeans 9.0


Primero que nada, se debe de obtener una copia oficil de NetBeans desde un repositorio de Apache, actualmente las distribuciones estan disponibles unicamente como archivos .zip.

NetBeans 9 Download

NetBeans 9 Download



Luego de la descarga, basta con descomprimir el archivo .zip:

unzip incubating-netbeans-java-9.0-bin.zip



El ejecutable de NetBeans se encuentra en el directorio bin/, para Unix:

cd netbeans  
bin/netbeans



Con esto ejecutaremos NetBeans 9. Por defecto, NetBeans se ejecutara en la maquina virtual de Java más actualizada disponible en el sistema.

NetBeans 9

NetBeans 9





Habilitando el soporte para Java EE


Para instalar el soporte a Java EE, primero que nada se debe habilitar el repositorio de actualizaciones de NetBeans 8.2.

Luego dirigirse a Tools > Plugins > Settings y agregar el siguiente repositorio:

http://updates.netbeans.org/netbeans/updates/8.2/uc/final/distribution/catalog.xml.gz

NetBeans 8.2 update center

NetBeans 8.2 update center



NetBeans 8.2 update center

NetBeans 8.2 update center



Por ultimo, se deben de buscar las colecciones mediante la palabra clave "Kit", como el nombre sugiere, estas son colecciones especificas para propositos especificos

NetBeans 8.2 update center

NetBeans 8.2 update center

Para replicar la experiencia EE de NetBeans 8, se recomiendan al menos los siguientes kits:

  • HTML5 Kit
  • JSF
  • SOAP Web Services
  • EJB and EAR
  • RESTful Web Services
  • Java EE Base

Luego de reinicias el IDE, NetBeans esta listo para Java EE.





Prueba 1: Wildfly 14


Para probar la instalación de NetBeans, agregaremos un nuevo servidor de aplicaciones WildFly y ejecutaremos una aplicación de Java EE 8 elaborada con REST.

Primero agregaremos un servidor WildFly:

WildFly 14

WildFly 14



Como sugieren las notas de lanzamiento de WildFly 14, la versión 14 es la primera totalmente compatible y certificada con Java EE 8.

La configuración sera detectada por NetBeans 9

WildFly 14

WildFly 14



El equipo de WildFly hace tiempo ha estado trabajando en la compatibilidad con Java 9 y Java 10, y siendo asi, la aplicación se compila, despliega y ejecuta sin inconvenientes.

WildFly 14

WildFly 14





Prueba 2: Glassfish 5 y Payara 5 sobre Java 10 (NetBeans) y Java 8 (Servidor de aplicaciones)


Para probar la experiencia regular, se ejecuta la misma prueba sobre los servidores de aplicaciones Payara y Glassfish 5, al igual que con WildFly, la configuración del nuevo servidor es bastante simple:

Seleccionamos Payara Application Server

Payara 5

Payara 5



Domain 1 como configuración por defecto

Payara 5

Payara 5



Considerando que Payara y Glassfish unicamente soportan Java 8 (el soporte a Java 11 está en camino) es necesario tambien crear una plataforma para Java 8 en caso de que se tenga más de una maquina virtual de Java.

Para esto, seleccionamos Tools -> Java Platforms y Add Platform

Payara 5

Payara 5



Se crea una nueva plataforma Java SE

Payara 5

Payara 5



Se configura el directorio Home de la nueva plataforma

Payara 5

Payara 5



Y finalmente se establece como plataforma en el servidor de aplicaciones

Payara 5

Payara 5



Sin embargo, luego de varias pruebas se ha identificado que el IDE debe ejecutarse también en Java 8 para soportar Payara/Glassfish 5, de lo contrario no sera posible ver el log del servidor, de forma similar existe un reporte en esta linea para Eclipse.



Payara 5





Prueba 3: Glassfish 5 y Payara 5 sobre Java 8 (NetBeans) y Java 8 (Servidor de aplicaciones)


Finalmente, para configurar Java 8 como la JVm para NetBeans, editamos el archivo etc/netbeans.confen el directorio de NetBeans, reemplazando la variable netbeans_jdkhome por la ruta hacia JDK 8, en el ejemplo se utiliza jenv para administrar las versiones de JVM, por lo que el valor final será netbeans_jdkhome="/Users/tuxtor/.jenv/versions/1.8"

Con esta pequeña modificación, NetBeans 9 es capaz de ejecutar Payara 5 y Glassfish 5 sin inconvenientes:

Payara 5

Payara 5



De la misma forma sera posible ejecutar Liberty, WebLogic y TomEE, con un poco de configuraciones de JDK la experiencia debe ser igual a NetBeans 8.




Víctor Orozco es un ingeniero de software Guatemalteco. Ex becario de la OEA, Msc. en ciencias de la computación, OCP Java SE 8 y actual director de tecnología en Nabenik. Con 10 años de experiencia en el sector Enterprise, como profesor universitario, desarrollador y arquitecto de software es uno de los fundadores y actual líder del grupo de usuarios Java de Guatemala, ganadores del premio Duke's Choice Award en 2016.

Este artículo ha sido revisado por el equipo de productos Oracle y se encuentra en cumplimiento de las normas y prácticas para el uso de los productos Oracle.