lunes, 5 de noviembre de 2018

Comenzar de cero con un arquetipo y Eclipse

PREREQUISITOS


Los prerequisitos necesarios para que todo lo expuesto en esta guía funcione son los siguientes:

  • JDK 1.8.0
  • Paquete JEE de Eclipse Photon o 2018-09 (Ingles)
  • Plantillas de objetos de dominio de Apache ISIS para Eclipse
  • Plantilla de JUnit para Eclipse
  • Plantillas de JMock para Eclipse
  • Plugin Lombock para Eclipse
  • Plugin DataNucleus para Eclipse

Las instrucciones de instalación de las plantillas y de los plugins están perfectamente descritas en la guia oficial de desarrollo de Apache ISIS (Ingles)


CREACIÓN Y CONFIGURACIÓN DE PROYECTO CON MAVEN


- Abrir Eclipse y crear un nuevo proyecto Maven (File -> New -> Maven Project)



- Seleccionar la localización donde guardar el nuevo proyecto


- Utilizaremos uno de los arquetipos de Apache ISIS para obtener un proyecto con funcionalidad básica listo para ser compilado y desplegado. Para ello debemos agregar el catálogo de arquetipos de Maven



- Seleccionar el arquetipo Hello World de Apache ISIS. Para ello filtrar por arquetipos del grupo org.apache.isis.archetype y seleccionar el helloworld-archetype de la última versión de Apache ISIS (2.0.0-M1 a día de este envío)



En caso de que aparezca una versión superior a la 2.0.0-M1, desmarcar la opción "Show the last version of Archetype only" de la pantalla de selección de arquetipos para que se listen todas las disponibles y poder seleccionar la especificada en esta guía

- Cuando finalice el proceso de descarga se debe especificar la siguiente información:

  • Group Id: En este caso se ha definido como org.esesoft para indicar quien está generando la aplicacion.
  • Artifact Id: Definido como farmdata. Especifica el nombre de la aplicación que se va a desarrollar.
  • Version: 0.0.1-SNAPSHOT Es la primera versión que se genera.
  • Package: Se forma por defecto con los valores de Group Id y Artifact Id.
En caso de querer más información sobre las reglas de idetificación de proyectos maven se puede consultar la guía oficial 




- Una vez finalizada la generación del proyecto se obtendrá la siguiente estructura en Eclipse


- El siguiente paso será la configuración del procesado de anotaciones. Se selecciona el nodo principal del proyecto y con le botón derecho se accede a sus propiedades


- Habilitamos la configuración específica de proyecto e indicamos donde se van a generar los códigos fuente para la aplicación y las pruebas.

  • Generated source directory: target/generated-sources/annotations
  • Generated test source directory: target/generated-test-sources/test-annotations




- Agregar soporte para DataNucleus seleccionado el nodo principal del proyecto y con el botón derecho seleccionar la opción "Add DataNucleus Support" del menú DataNucleus.


- Una vez agregado el soporte se deberá activar la opción de "Auto-Enhancement" del menú DataNucleus


- A continuación configurar, dentro de las propiedades del proyecto, el uso del classpath específico de proyecto con DataNucleus


- Por último, y también dentro de las propiedades del proyecto, configuramos el nombre de la unidad de persistencia de DataNucleus

  • El nombre lo obtenemos del fichero persistence.xml localizado en el grupo de "JPA Content"



  • La configuración la realizamos en el apartado Enhancer del grupo DataNucleus dentro de las propiedades del proyecto




DESPLEGAR LA APLICACIÓN


- Por último sólo queda desplegar la aplicación utilizando jetty. Para ello seleccionamos el nodo principal del proyecto y con el botón derecho desplegamos las opciones de "Run As" para seleccionar "Maven build...". La opción con puntos suspensivos nos permitirá indicar el target, que en nuestro caso debe ser:   jetty:run



- La consola de eclipse deberá mostrar que el servidor Jetty ha sido arrancado


- Ya se puede acceder a la aplicación a través de la URL: http://localhost:8080/wicket

  • Usuario: sven
  • Password: pass