1 de febrero de 2009

Instalación de Plugins en NetBeans

Es importante para la fase de desarrollo que nuestro IDE nos de soporte para el tipo de aplicación que estemos haciendo (si estamos desarrollando una aplicación swing podamos ver cómo va quedando la interface de usuario sin necesidad de correrla, si hacemos una aplicación para móviles poder iniciar de forma automática un emulador y hacer el deploy de nuestra aplicación, si hacemos algo web poder levantar nuestro servidor y hacer el deploy y undeploy de la aplicación, etc.).

Cuando hablamos de cómo configurar el NetBeans para trabajar bajamos la versión básica del IDE y dijimos que bajaríamos otros paquetes o plugins conforme los fueramos necesitando. En este post enseñaré a instalar estos plugins y de paso enseñaré cómo configurar el Tomcat para trabajar con aplicaciones web.


Los plugins para NetBeans pueden instalarse desde dos fuentes:
  1. El catálogo de plugins de NetBeans el cual podemos consultar desde dentro del IDE (instalación online).
  2. Archivos .nbm (NetBeans Module) que podemos encontrar en algunas páginas de Internet, principalmente desde el portal de plugins de NetBeans aquí (instalación offline).
La instalación de los plugins, sin importar su fuente, se hace desde el mismo menú y es muy parecida. Primero comenzaré hablando de cómo instalar los plugins desde el catálogo

1 - Instalación Desde el Catálago de Plugins (instalación online)


Esta forma de instalación es la más simple y directa. Nos permite, desde la misma interface de NetBeans, revisar un catálogo de plugins y descargarlos en ese momento. También es la más segura ya que si el plugin que estamos tratando de instalar necesita otros plugins estos otros plugins son descargados e instalados también. Además de que podemos estár seguros de que han pasado por un proceso de verificación y no debe haber problemas al instalarlos.

Para acceder a este catálogo nos dirigimos al menu Tools -> Plugins. Con lo que aparecerá la ventana de Plugins. Esta ventana tiene 5 pestañas:
  • Las actualizaciones encontradas de los plugins que ya tenemos instalados.
  • Los plugins disponibles y que no tenemos instalados.
  • Los plugins que hemos descargado (archivos .nbm) que queremos instalar.
  • Los plugins que ya tenemos instalados.
  • La configuración de la herramienta de plugins (básicamente para agregar o eliminar repositorios de plugins y la frecuencia con la que serán buscadas las actualizaciones).


Como dije al principio del post, los plugins que descargaremos en esta ocasión serán los que nos permitan crear aplicaciones web y usar el contenedor de servlets y JSPs Tomcat.

Hacemos click en la pestaña de los plugins disponibles (mostrada en la imagen anterior) para ver el catálogo de plugins. Este catálogo muestra los plugins divididos en varias categorías. Estas incluyen AJAX, el mismo IDE, desarrollo de aplicaciones en C/C++, Groovy, JavaFX, aplicaciones móviles, aplicaciones web, entre muchas otras.

Ordenamos los plugins por categoría y vamos casi hasta el final de la lista en donde esté la categoría "Web y Java EE". Para crear aplicaciones web lo único que debemos hacer es instalar el plugin "Web Applications" y para poder usar el Tomcat debemos instalar el plugin "Tomcat" (sin este último plugin no seremos capaces de iniciar y detener el tomcat desde el NetBeans ni hacer el deploy de nuestras aplicaciones de forma automática). Si lo desean pueden aprovechar para instalar más plugins para aplicaciones web o para cualquier tipo de aplicación. En mi caso instalaré los plugins para trabajar con el framework Prototype para JavaScript (JavaScript Library: Prototype) y el manager de bibliotecas de JavaScript (JavaScript Library Manager) para poder incluir las bibliotecas de prototype en mis proyectos web.



Para descargar e instalar los plugins seleccionados hacemos click en el boton "Install" con lo que se nos mostrará la lista de plugins que serán instalados. Hacemos click en "Next" y se mostrará un acuerdo de licencia. Si aceptamos este acuerdo comenzará la descarga. Si lo deseamos podemos hacer que esta descarga e instalación se haga en segundo plano (en background) para que podamos seguir trabajando.




La descarga e instalación puede tardar un rato dependiendo del número de plugins que queramos instalar.

Al finalizar el proceso se nos pedirá que reiniciemos el IDE. Y listo!!!. Ya hemos extendido las funcionalidades del NetBeans instalando los plugins para el desarrollo de aplicaciones web.

Aunque aparentemente nuestro IDE no ha sufrido cambios, podemos ver que si tratamos de crear un nuevo proyecto (File -> New Project) se ha agregado la categoría de proyectos web Java:



Al final del post hablaré de cómo configurar el Tomcat y haremos una pequeña página de prueba. Ahora veremos cómo instalar los plugins offline usando archivos .nbm.

2 - Instalación Desde archivos .nbm (instalación offline)

Esta forma de instalación tiene la ventaja de que no es necesario que estemos conectados a internet para realizarse ya que toda la información del plugin se encuentra en el archivo .nbm. Sin embargo, si este plugin necesita de otro para funcionar, será necesario que nos conectemos a internet, o bien, que contemos con el archivo .nbm de ese otro plugin.

Estos archivos podemos descargarlos desde diversos sitios de Internet. Por lo regular lo haremos desde el portal de plugins de NetBeans en esta página. En este portal podemos ver los últimos plugins que se han subido, los plugins más populares, los mejores calificados, por categorías, o podemos buscarlos por algún criterio que queramos (log, hibernate, servidores, etc.).



Nota: Algunos de los plugins mostrados en el portal de plugins están disponibles también desde el catálogo de plugins del NetBeans solo hay que buscarlos.

También podemos encontrar los archivos .nbm en algunos otros sitios. Por ejemplo, cuando hablé de JasperReports y iRepot en un post anterior, dije que podemos descargar el plugin de iReport para NetBeans desde aquí. Si abrimos el archivo .zip descargado veremos que contiene un archivo llamado "iReport-nb-3.1.3.nbm", el cual es el plugin de iReport para NetBeans que queremos instalar.

Nota: Este plugin aparentemente tiene problemas, cuando lo instalé y reinicié el NetBeans este mandó un error y tuve que desactivar y después desinstalar el plugin. Así que solo lo usaré para ejemplificar la instalación de plugins de forma offline. Les recomiendo que no traten de instalarlo.

La instalación es bastante simple. Solo tenemos que abrir la ventana de plugins desde el menu Tools -> Plugins. En esta ventana nos dirigimos a la pestaña "Downloaded" y presionamos el botón "AddPlugins..., con lo que se abrirá una ventana para selección de archivos.


Aquí solo debemos seleccionar nuestro archivo .nbm (en este caso iReport-nb-3.1.3.nbm) con lo que se agregará a la lista de plugins a instalar. Ya solo queda hacer click en el botón "Install" para comenzar la instalación.


Aquí ocurrirán los mismos pasos que al hacer la instalación desde el catálogo de plugins (se mostrará la lista de los plugins que se van a instalar y habrá que aceptar una acuerdo de licencia) al hacer la instalación.

Es posible que, como en mi caso, les aparezca un mensaje que el plugin que estamos tratando de aceptar está firmado pero no se confía en el. Solamente den click en el botón "Continue" para que la instalación proceda.


Dependiendo del tipo de plugin tal vez se les pida que reinicien el IDE o que parezca que el NetBeans se atoró. Si les ocurre lo último solo esperen unos minutos a que el plugin termine de instalarse ya que puede que lo que esté ocurriendo es que se esten haciendo las configuraciones necesarias para que el plugin funcione correctamente (o que les haga falta presionar el botón "close" como a mi ^-^!). Y listo!! podrán comprobar que el plugin se instaló correctamente por que se han agregado componentes a la interface del NetBeans.


Esto concluye la parte de instalación de plugins en el NetBeans. Para terminar el post explicaré cómo configurar el tomcat para poder usarlo como servidor en nuestras aplicaciones web y haremos una pequeña página de ejemplo.

3 - Instalación y Configuración del Tomcat para el desarrollo de aplicaciones web


Lo primero que hay que hacer es descargar el Tomcat. La última versión al momento de escribir esto es la 6.0 y pueden descargarla desde aquí. Existen varias formas de instalarlo : descomprimirlo desde un archivo .zip o .tar.gz, o con un instalador de Windows. En lo personal recomiendo que bajen alguna de las versiones comprimidas (en .zip o .tar.gz) aunque esten usando Windows, ya que estas versiones contienen los archivos .bat y .sh que NetBeans (dependiendo del sistema en el que estén trabajando) usará para iniciar y detener el tomcat.

Una vez que hemos descargado el archivo la instalación es muy simple, solo hay que descomprimirlo en la ubicación deseemos (en mi caso C:\Program Files\Java\servidores).

Ya que hemos instalado (o mejor dicho: descomprimido) el tomcat pasaremos a su configuración para usarlo desde NetBeans. Abrimos nuestro IDE y vamos a la ventana de "Services" (Ctrl + 5 en caso de que esté cerrada) y ahí veremos que hay un árbol que contene 3 nodos ("Databases", "Web Services", y "Servers") en donde el nodo "Servers" debe estar vacio. Estos nodos nos muestran las bases de datos, servicios web, y servidores web, respectivamente, que tenemos instalados y configurados para usar desde nuestro IDE.

Hacemos click derecho sobre el nodo "Servers" y aparecerá un menú contextual con una unica opción que dira "Add Server...". Hacemos click sobre esta opción.


Al hacer esto se abrirá la ventana de un asistente que nos ayudará en el proceso de configuración del servidor, el cual consta de 2 pasos:
  1. La elección del servidor
  2. La instalación y los detalles del login del administrador del servidor
En el primer paso veremos que solo tenemos tres opciones de servidores de donde escoger Donde las tres opciones son tomcats (versiones 5.0, 5.5, y 6.0). Esto ocurre así porque solo instalamos el plugin para trabajar con tomcat. Si instalaron el plugin para otro servidor también deben poder verlo en esta lista.


Seleccionamos el tomcat en la misma versión que hemos descargado, en mi caso la 6.0. En esta ventana también podemos cambiar el nombre del servidor, que es el nombre que se mostrará en el nodo "Servers" de la venta "Services". Yo dejaré el nombre que trae por defecto ("Tomcat 6.0") . Damos click en el botón "Next" para proceder con el paso 2 de la instalación.

El siguiente paso consiste en indicarle al NetBeans en dónde se encuentra instalado el tomcat (Catalina Home) y cuál es el nombre y la contraseña de un usuario con perfil "manager", el cual tiene permiso para iniciar y detener este servidor.

Normalmente al instalar tomcat se establece una variable de entorno llamada CATALINA_HOME, lo cual no hemos hecho en este tutorial ya que no es necesario para trabajar con el desde en NetBeans (aunque los archivos para iniciarlo [.bat y .sh] establecen una variable de entorno llamada CATALINA_BASE la cual he encontrado que es más útil en los casos practicos). Si desean pueden establecer la variable CATALINA_HOME apuntanto al directorio en el que descomprimieron el tomcat (en mi caso C:\Program Files\Java\servidores\tomcat-6.0) el cual, por cierto, es el mismo directorio al que apuntará la variable CATALINA_BASE.

Regresando al paso 2 de la configuración. Especificamos el directorio en el que está nuestro tomcat (en mi caso C:\Program Files\Java\servidores\tomcat-6.0). Si se equivocan de directorio no se preocupen, el NetBeans mostrará un mensaje rojo en la parte de abajo de la ventana indicando que el folder especificado no es válido.


Después de especificar un directorio Catalina Home válido, debemos dar el nombre de usuario y contraseña de un usuario existente del tomcat que tenga el perfil "manager". Los usuarios del tomcat se encuentran registrados en un archivo .xml llamado "tomcat-users.xml" que se encuentra en el directorio "conf" en donde descomprimimos nuestro tomcat. En versiones anteriores del tomcat este archivo contiene varios usuarios con distintos roles, sin embargo, en la versión 6 estos usuarios están comentados y además no existe ninguno con el rol "manager".


Podemos hacer dos cosas para agregar nuestro usuario "manager" que nos pide el NetBeans. La primera es agregarlo a mano en este archivo "tomcat-users.xml" entre las etiquetas <tomcat-users> quedando más o menos de la siguiente forma:
  <tomcat-users>
     <role rolename="manager" />
     <user username="admin" password="admin" roles="manager" />
</tomcat-users>

O podemos agregarlo desde dentro del mismo NetBeans. En la pantalla de configuración en la que nos encontramos (paso 2) en donde nos pide las credenciales de un usuario con el perfil "manager" hay una opción que dice "Create user if it does not exist". Escribimos un nombre de usuario y una contraseña y hablitamos esta opción, con lo cual nuestro usuario será creado de forma automática. De hecho lo que hace es modificar el archivo "tomcat-users.xml" dejandolo de esta forma:


Y listo. ya ha quedado configurado el tomcat para poder usarlo en nuestras aplicaciones web. Si vamos nuevamete al nodo "Servers" de la ventana "Services" veremos que se ha agregado el Tomcat 6.0.


Ahora haremos una pequeña aplicación web solo para comprobar que todo ha quedado bien.

Creamos un nuevo proyecto llendo al menú File -> New Project. En la ventana que se abre seleccionamos la categoría "Java Web" y seleccionamos "Web Application". Hacemos click en el botón "Next". En el siguiente paso le damos un nombre y una ubicación al proyecto y hacemos click en el botón "Next". Para terminar seleccionamos el servidor que vamos a usar (como solo tenemos instalado el Tomcat 6 seleccionamos este) y hacemos click en el botón "Finish". Con esto debe aparecer nuestro proyecto en la ventana "Projects" y un archivo llamado "index.jsp" en la ventana del editor.


Ahora para ejecutar la aplicación solo debemos hacer click en el botón "Run Main Proyect" o presionamos F6. Con esto se mostrarán tres pestañas en la ventana "Output". La primer pestaña ("WebApplication1 (run)") muestra los resultados del proceso de compilación y ejecución de la aplicación. La segunda ("Tomcat 6.0 Log") es la bitácora del tomcat (aquí de muestran principalmente los mensajes o errores generados por nuestra aplicación). La última pestaña ("Tomcat 6.0") muestra las salidas de nuestra aplicación.


Y, dependiendo de nuestra configuración, se abrirá nuestro navegador web mostrando una página con un mensaje que dice:

Hello World!


Con esto comprobamos que todo ha quedado instalado correctamente.

Este es el final de este post. Espero que les haya sido de utilidad. No olviden dejar sus dudas, comentarios y sugerencias.