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