jueves, 15 de enero de 2015

Instalación de JDK, Tomcat 8.0.15 bajo Linux/Ubuntu y despliegue de un .war

     Las siguientes instrucciones esquemáticas son:
1er Paso: instalar el JDK 1.0.8_25 desde el repositorio (es lo más simple y rápido)
     sudo add-apt-repository ppa:webupd8team/java
     sudo apt-get install oracle-jdk8-installer
     sudo apt-get install oracle-java8-installer

2º Paso: Descargar desde la web de Apache el paquete apache-tomcat-8.0.15.tar.gz desde la página de Apache-Tomcat: http://tomcat.apache.org/download-80.cgi

3er Paso: desempaquetar el fichero y moverlo a /var/local/:
     sudo mv apache-tomcat-8.0.15 /var/local/

4º Paso: Modificar el archivo tomcat-users.xml para crear roles, usuarios y password de administración de Tomcat:
     sudo gedit /var/local/apache-tomcat-8.0.15/conf/tomcat-users.xml 

Y agregamos las etiquetas de 'role' y 'user' entre las etiquetas ya existentes <tomcat-users> y </tomcat-users> para poder administrar el servicio:
<tomcat-users> 
     <role rolename="manager-gui" /> 
     <role rolename="admin-gui" /> 
     <role rolename="manager-script" /> 
     <role rolename="manager-jmx" /> 
     <role rolename="manager-status" /> 
     <user username="admin" password="unapassword" roles="manager-gui,admin-gui" /> 
</tomcat-users>

5º y 6º Paso: Arrancar tomcat 8: sudo /var/local/apache-tomcat-8.0.15/bin/startup.sh
Para parar el servicio: sudo /var/local/apache-tomcat-8.0.15/bin/shutdown.sh

Comprobamos que el servicio está en ejecución y funcionando bien entrando en la URL:
     http://localhost:8080/

7º Paso: Despliegue de un proyecto mediante el archivo .war:
Desde NetBeans y sobre el proyecto web en cuestión, hacemos click derecho (sobre el proyecto) y le damos en el menú contextual a la opción 'Clean and Build' y crea un archivo con el mismo nombre que el proyecto y con extensión '.war' en la carpeta: /ruta_de_proyectos_NetBeans/dist/nombre_proyecto.war

8º Paso: Nos vamos a la página de administración de Tomcat (mostrada en la imagen anterior) y le damos a la opción 'Manager App', introducimos el usuario y password configurada en el archivo 'tomcat-users.xml'  y nos vamos a la sección 'Archivo war a desplegar' de la nueva página que nos aparece:

Examinamos, nos vamos a la ruta antes descrita: /ruta_de_proyectos_NetBeans/dist/nombre_proyecto.war y le damos al botón 'Desplegar'.

9º Paso: Comprobamos que todo funciona correctamente poniendo en la URL:
     http://localhost:8080/nom_aplicacion/

Estas instrucciones han sido extraidas de las siguientes entradas de blog:

     @eltiopacote

jueves, 1 de enero de 2015

Pasos para crear tu primer proyecto de NetBeans con Hibernate.

     Lo primero que quiero presentar es la lista de vídeos donde se detalla este proceso: http://www.youtube.com/playlist?list=PLy5iDONenL-09mxxRpdWajLmRuJyurZTG

     Y a continuación voy a describir los pasos que hay que seguir para configurar Hibernate 4.3.7 en NetBeans 8.0.2.
Nota 1: ¿Por qué detallo los pasos si ya están en los vídeos? Porque en los vídeos no muestran como se van importando las librerías que se necesitan (aunque en NetBeans te dice que te falta una librería y pregunta si la quieres agregar)
Nota 2: Aunque realmente son los mismos pasos que para cualquier otra versión de Hibernate con NetBeans.

Previos: 
Descargar el paquete correcto de Hibernate (release, a fecha 1 de enero de 2015 es la 4.3.7) http://hibernate.org/orm/, descomprimirlo y mover la carpeta a la ubicación que queramos. Si trabajamos en grupo y vamos a modificar el proyecto varias personas todas tienen que tener la carpeta en la misma ubicación.
Si en la ejecución de la aplicación final falla algún proceso de alta, consulta o borrado de registro, habrá que comprobar si el conector JDBC es la correcta utilizada para la versión de Hibernate que hayamos utilizado; y el paquete JDK también es sospechoso de que esté fallando. Esto es crucial para trabajar en grupo: que todos utilicen las mismas versiones de todo JDBC, JDK y Hibernate.
Recordad tener muy en cuenta la diferencia de los nombre de los paquetes entre mayúsculas y minúsculas.
Tenéis todos los archivos generados para el proyecto en http://www.sacalepartidoainternet.com/hibernate/ por si no sabéis que poner exácmente en un fichero.
De regalo tenéis en la misma carpeta un plugin para configurar vuestro NetBeans con el aspecto cuasi exacto a Sublime Text.
Para el proyecto he creado una BDD en MySQL llamada alumnos, con una tabla que se llama alumnos, con tres campos: codigo (int), nombre (varchar) y apellidos (varchar).

1er Paso Poner libreria:
Tools → Libreries → New library → le damos nombre (Hibernate 4.3.7) → y lo buscamos en la ruta (/usr/lib/jvm/jdk1.8.0_25/jre/lib/hibernate-4.3.7.Final/dist/lib/*todas*)Ruta de la libreria (para ponerlo común con los demás SOs 'Add JAR/Folder' → 'OK'.

2º Paso Creamos aplicación Java (normal).

3er Paso Sobre 'Source Packages' le damos nuevo → 'Others' → Seleccionamos 'Hibernate' 'Hibernate Configuration Wizard' → Generamos un archivo de configuración; lo dejamos tal cual en la siguiente 'hibernate.cfg' → En la siguiente pantalla buscamos nuestra BDD (En el desplegable de arriba pinchamos y seleccionamos 'New DataBase connection') → En 'Driver' seleccionamos 'MySQL (Connector/J driver) y dejamos el conector MySQL que haya → Rellenamos los datos (principalmente el nombre de la BDD 'Database', el password de 'root' y recordamos password) → 'Test Connection' → Sale el mensaje 'Connection Succeeded' → 'Finish' → 'Finish' (Si por cualquier motivo se actualiza o cambia el conector JDBC MySQL deberemos hacer de nuevo estos pasos para generar de nuevo el archivo de configuración hibernate.cfg cargarcandonos previamente el archivo 'hibernate.cfg.xml' ).

4º Paso Sobre 'Source Packages' → 'New' → Others → Seleccionamos 'Hibernate' y en File Types seleccionamos 'HibernateUtil.java' → Class Name: HibernateUtil  y en Package: Conexion (para que no esté en la carpeta 'default package'.

5º Paso Agregar libreria Hibernate 4.3.7:
Sobre Libraries → 'Add library' → Añadimos la libreria 'Hibernate 4.3.7' (que es la que importamos en los pasos anteriores) y podemos quitar las obsoletas.

6º Paso Modificar HibernateUtil.java → modificar con las lineas del fichero 'HibernateUtil.java'.

7º Paso Sobre 'default package' volvemos a dar 'New' → 'Others' → 'Hibernate' → 'Hibernate Reverse Engineering Wizard' → En la siguiente pantalla lo dejamos tal cual → Seleccionamos las tablas que queremos de la BDD y las añadimos → 'Finish' (Para modificar la conexión JDBC también debemos eliminar el  fichero 'hibernate.reveng.xml' y generarlo de nuevo )

8º Paso Sobre 'default package' volvemos a dar 'New' → 'Others' → 'Hibernate' 'Hibernate Mapping Files and POJOs from Database' → Marcamos 'JDK 5 Language Features' y le damos el nombre a Package: 'Entidad' → 'Finish'. Esto crea una serie de clases que trabajan contra las tablas con el mismo nombre.

9º Paso Añadimos una nueva clase en el paquete 'Conexion' llamado 'Datos.java' → Y le agregamos las lineas del fichero 'Datos.java'.

10º Paso En la clase principal (main) modificamos el código con el del fichero 'HibernateMySQL.java'.

     Ahora solo hay que tener descomentadas las líneas de los procesos que vayamos ha hacer y ejecutamos la aplicación. Listo.

     Si tenéis algún problema no dudéis en comentar.
     @eltiopacote

Índice de todas las entradas en: http://www.pacovalverde.es/indice/