Entradas

Instalando Apache NetBeans 9 con componentes Java EE | Jakarta EE

Imagen
En este vídeo veremos cómo instalar Apache NetBeans 9, y configurarlo para que funcione con los módulos de Java EE | Jakarta EE. A la fecha de este vídeo el IDE solo permite desarrollar con Java SE, ya que Oracle está liberando (después de una exhaustiva revisión) el código para donarlo a la Fundación Apache. Pero como NetBeans es modular, se pueden agregar los módulos que se utilizan en la versión anterior. En el vídeo lo explico. Los enlaces utilizados son los siguientes: Los plugins de 8.2:  https://blogs.apache.org/netbeans/entry/what-s-happened-to-my Plugins de Payara para NetBeans: https://github.com/payara/ecosystem-netbeans-plugin/releases Happy NetBeaning! Social Twitter Video: Instalacion de @netbeans 9 con Soporte para #JakartaEE y @Payara_Fish https://t.co/zm9ThFwzbQ — ☕ Apuntes de Java ☕ (@apuntesdejava) 14 de agosto de 2018 Facebook

Microservicios en Payara sobre Heroku

Imagen
Con este post comenzamos el mundo de Jakarta EE, que es la "evolución" de Java EE. Hablaremos sobre cómo poner un microservicio en Payara Micro sobre Heroku.

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 RESTful. Al final l

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.

Algunos envejecen cuando corrigen su programa

Imagen

Spring con JDBC y JPA

Imagen
En este post veremos una aplicación Java Web donde la conexión a la base de datos se hará usando Spring, y también veremos cómo manipular la data con JDBC y con JPA. Todo esto lo ejecutaremos desde Tomcat.

Opinión: La alternativa de Java EE

Imagen
Si vamos a usar un servidor Java EE (perfil completo) para implementar una solución, recomiendo utilizar todas las funcionalidades que vienen en la especificación: EJB, JPA, JMS, etc. Pero hay veces que no podemos contar con un servidor de ese tipo ya que, por ejemplo, el cliente no conoce más allá del Tomcat, o no exista gente que podría administrar un servidor como GlassFish, Payara, Weblogic, etc. Entonces, llegamos a extrañar las funcionalidades dadas por Java EE, y optamos por otros frameworks que sí nos ayudan en nuestros momentos de limitaciones de servidor. Spring ayudó mucho desde un inicio cuando no se contaba con servidores Java EE OpenSource completos. Caló tan fuerte entre los desarrolladores, que practicamente se ha hecho un "estándar" alterno a Java EE. Cuando los arquitectos de Java EE "despertó" y mejoró las especificaciones en la versión 5, pienso yo, ya era muy tarde. Tomcat siguió siendo el servidor "estándar" para aplicaciones

Java EE 8 | Server Push (Servlet 4.0) y MVC

Imagen
En el anterior post habíamos visto un resumen de todas las nuevas características que tendrá Java EE 8. Aquí detallaremos un poco de Servlet 4.0 que consiste básicamente en la funcionalidad Server Push.

Java EE 8 - Nuevas características

Imagen
Sigamos explorando lo nuevo que viene en el Java EE 8. En este post veremos las características que esta nueva actualización. Y como una imagen vale más que mil palabras, aquí una imagen... luego vienen las palabras. Esta imagen fue presentada por David Delabassée ( @delabassee ) el año pasado en el JavaOne y resalta los cambios y adiciones para Java EE 8.

Java EE 8 - GlassFish 5.0

Imagen
A partir de hoy y en los siguientes posts comenzaremos a ver y revisar lo que será el Java EE 8. Para ello utilizaremos GlassFish con la versión 5.0.

DataSources en una aplicación Java EE

Imagen
Todas las aplicaciones en Java EE va a necesitar - al menos - una conexión a una base de datos relacional. Según el Diseño de Patrones, la conexión a base de datos debe estar fuera de la aplicación que estamos construyendo. Según el estándar de Java EE, la conexión a la base de datos debe estar basada en un Pool de Conexiones y que esté administrado por el Contenedor Java EE. Esta conexión a la base de datos es a través de los DataSource del Contenedor Java EE. En este post veremos que existen tres maneras para implementar un DataSource, con sus ventajas y desventajas, dependiendo de lo que uno desea para su propia implementación.

Un vistazo a JSON-B de Java EE8

Imagen
Java EE 8 viene con muchas características interesantes, y en este post veremos un poco de la nueva implementación: JSON Binding, o también conocido como JSON-B ( JSR-367 )

Payara Micro

Imagen
Ya estamos en una época en que no necesitamos de grandes servidores de aplicaciones para hacer funcionar una pequeña aplicación. Montar todo un entorno es cada vez más simple. Por ejemplo se está usando Docker para montar un entorno especializado únicamente para un fin: o base de datos, o servidor de aplicaciones, etc. Así se ahorran costos para configurar grandes entornos. En el mundo de Java EE, hay alternativas para hacer aplicaciones más pequeñas y no depender de todo un servidor. De esta manera podemos tener microservicios en lugar de una aplicación monolítica. Spring Boot es una alternativa: unos cuantos scripts y ya tenemos una aplicación Spring listo para ejecutarse desde cualquier contenedor standalone. Pero en este post escribiré de otra propuesta: Payara Micro .

RESTful usando Payara Fish y Knockout.js apoyado por NetBeans

Imagen
Aquí muestro un ejemplo de implementación de AJAX con RESTful usando  +Payara  y knockout.js . Para hacerlo más rápido, utilicé NetBeans, así me ahorro bastante en la configuración. Preguntas, comentarios háganla abajo sin miedo. Espero que les sea útil

JPA: Maestro / detalle con clave primaria compartida

Imagen
Hace casi 10 años (wow!) había publicado un artículo sobre las claves compuestas en entidades de tipo Maestro / Detalle . Bueno, aquí está una super actualización. Esa vez fue hecha con JPA 1.0, ahora lo mostraré más actualizado y mejorado con con el JPA 2.0 .