Entradas

Pruebas Unitarias a JPA y servicios REST con Arquillian + Payara. (4/4) - Empaquetando el Servicio

Imagen
Ya hemos desarrollado el servicio, con acceso a base de datos, lógica de negocio, lo hemos probado tanto a nivel de EJB de base de datos, como probando el servicio REST. Ahora nos toca empaquetarlo todo en un solo .jar para poderlo ejecutar como servicio autónomo.

Pruebas Unitarias a JPA y servicios REST con Arquillian + Payara. (3/4) - Probando el Servicio

Imagen
Ya tenemos la persistencia (JPA), ya tenemos la lógica de negocio (EJB) y con sus respectivas pruebas, ahora nos falta la parte principal del microservicio: el servicio. Así que haremos un par de servicios y sus respectivas pruebas con Arquillian.

Pruebas Unitarias a JPA y servicios REST con Arquillian + Payara. (2/4)

Imagen
Continuaremos con nuestro proyecto de prueba. Ahora lo configuraremos para que permita probar EJB que tendrán la lógica de negocio, y utilizando JPA como motor de persistencia.

Pruebas Unitarias a JPA y servicios REST con Arquillian + Payara. (1/4)

Imagen
Las pruebas unitarias son buenas y necesarias. Nos permiten evaluar ciertas porciones del proyecto antes de integrar y ejecutarlo todo. No vamos a esperar construir todo un auto para probar si funciona. Por tanto, solo probamos cada parte y nos aseguramos que cada prueba cumpla con ciertas características. Estas características son las que se definen en las Pruebas Unitarias. Si pasan estas características - o condiciones - recién se puede construir el proyecto. Aprovechando las fases de construir de Maven, podemos implementar pruebas unitarias para que - si aprueban las restricciones - pueda construir el proyecto sin problema. Pero ¿si necesitamos probar accesos a JPA o lógicas establecidas en RESTful? o más aún: ¿cómo podemos probar en un ambiente Java EE sin necesidad de desplegar un servidor Java EE? Aquí es donde entra   Arquillian . En esta serie de publicaciones  veremos desde preparar un ambiente Java EE para Arquillian, hasta hacer pruebas con JPA y RESTf...

Ejemplos de Microservicios con Java

Imagen
Recuerdo un tiempo que  la gente (nivel usuario) pensaba que una computadora era siempre Windows + Office, hasta lo llamaban "Microsoft": - ¿Tu compu tiene Microsoft ? - ¿Office o Windows? - Microsoft XP . La gente pensaba así por default . Y algo así lo estoy viendo ahora con esta nueva tecnología llamada Microservicios : Solo se hace con SpringBoot. Pues bien, en este post mostraré  tres (03) frameworks en Java que permiten hacer Microservicios, sin usar SpringBoot.

Java EE 8: Bean Validation

Imagen
En Java EE 8, el api Bean Validation ha venido con mejoras. Por ejemplo, ahora podemos validar un campo de tipo java.time.LocalDate @Past private LocalDate fechaIngreso; También, determinar los límites de una lista: @NotEmpty private List<@Size(min = 1, max = 15) String> proyectos; Al igual que un nuevo tipo de validación (y así evitar log RegEx) @Email private String email; Podemos evaluar los campos validados desde el mismo Java (aquí un ejemplo desde una prueba unitaria): @Test public void testMemberWithNoValues() { Empleado e = new Empleado(); e.setEmail("abc@"); e.setDni("12345678"); e.setProyectos(Arrays.asList("Proyecto 1", "Proy2", "Proy3")); // validate the input ValidatorFactory factory = Validation.buildDefaultValidatorFactory(); Validator validator = factory.getValidator(); Set<ConstraintViolation...

Java EE 8 - Json Binding

Imagen
Una de las nuevas características de Java EE 8 es el api de JSON-B, o Json Binding, que consiste en mapear cada entrada de un dato json a un objeto java.