Ejemplos de JPA - Guia #2 [COMPLETA]

0. Crear la base de datos achilles (ir a Inicio / Programas / MySql / MySql Server 5.6 / MySql 5.6 Command Line Client
   Poner el password (root)
   Poner Show Databases; (enter)
   Si ya no existe achilles,
   Create Database achilles;
   exit

1. Creo el AppAchilles y dejo marcado que cree el modulo EJB

2. Creo el dominio (desmarco que cree la main class)

3. Creo la clase Categoria, y le pongo como package: uy.com.achilles.dominio

4. En la ficha Services, crear una nueva coneccion a la base achilles (poner root root en el usr y pwd)

5. Sobre el EJB crear un persistence unit (OJO!! A LA CONEXION NOMBRARLA ASI: java:app/achilles (SINO, FALLA EL DEPLOY)

6. Sobre el EJB, new / entity class (nombre CategoriaEntity, y package uy.com.achilles.entidades)

7. Agregar los atributos en la entidad creada (para eso ver los que estan en el dominio y copiarlos)

8. Agregar los decoradores que falten para los nombres de las tablas, campos, etc (@Table(name="CATEGORIA"), @OneToOne, etc)

9. Hacer Clean and Build de AppAchilles

10. Hacer Deploy de AppAchilles

Va a dar un error: SEVERE:   Exception while deploying the app [AppAchilles] : Application [AppAchilles] contains no valid components

[ESTO ES PORQUE EL EJB NO TIENE NINGUN SESSION BEAN!!!]

11. Crear un session bean dentro del EJB

12. Hacer clean and build del EJB

13. Hacer deploy del EJB

[SI NO CREA LAS TABLAS ES PORQUE ES NECESARIO IMPLEMENTAR EL SESSION BEAN!!! AHI ES DONDE SE ESPECIFICA EL PERSISTENCE CONTEXT]

14. Crear el Session Bean (stateless, local)

15. Crear un Web Service dentrod de EJB (elegir la opcion de crearlo a partir de un SB existente)

16. Crear una nueva java app. llamada ClientePrueba

17. Dentro de ella, crear un webservice client, que apunte al WSDL del servicio creado en el paso 15.

18. Agregar el codigo:

        CategoriaWS port = new CategoriaWS_Service().getCategoriaWSPort();
     
        Categoria cat = new Categoria();
     
        cat.setId(new Long(1));
        cat.setNombre("categoria1");
        cat.setDimensiones("10x10x10");
        cat.setNotas("Notas cat 1");
     
        port.alta(cat);






No hay comentarios:

Publicar un comentario