المشاركات

عرض الرسائل ذات التصنيف restful

Cliente Standalone de JAX-RS (o cualquier endpoint RESTful)

صورة
Si tenemos una aplicación standalone (puede ser un JavaFX, de línea de comandos, batch, etc) que necesite consumir un endpoint hecho en RESTful, por lo general usaríamos algo como esto: public class RestClient { private static final String REST_URI = "http://localhost:8082/spring-jersey/resources/employees"; private Client client = ClientBuilder.newClient(); public Employee getJsonEmployee(int id) { return client .target(REST_URI) .path(String.valueOf(id)) .request(MediaType.APPLICATION_JSON) .get(Employee.class); } //... } (Tomado de https://www.baeldung.com/jersey-jax-rs-client ) Lo cual no está mal, pero creo que debería ser lo más transparente posible. ¿Cómo es eso? Si ven en la línea 13 del código anterior, significa que hay que decirle que haga un GET a la petición, además de pasarle el tipo de respuesta y otras cosas más. La cuestión se volvería algo compleja si queremos hace

JPA + REST en Payara Micro - Formato de fechas e insertando registros

صورة
Continuamos con nuestra serie de vídeos de Microprofile con Payara Micro. En este nuevo vídeo veremos cómo formatear las fechas en JSON desde la entidad JPA. Además, veremos cómo insertar registros en la tabla usando unas peticiones POST desde RESTful. El código fuente se encuentra disponible en este repositorio. https://bitbucket.org/apuntesdejava/microprofile-service-example/src/master/?at=post

JPA + REST en Payara Micro

صورة
En este vídeo veremos cómo acceder a una base de datos desde un endpoint REST, utilizando JPA, en Payara Micro.  La base de datos para el ejemplo se puede descargar desde aquí: https://github.com/datacharmer/test_db    El código fuente se este proyecto se puede descargar desde aquí: https://bitbucket.org/apuntesdejava/microprofile-service-example/src/jpa/

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

صورة
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

صورة
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)

صورة
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)

صورة
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

صورة
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.

Payara Micro

صورة
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

صورة
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

Servidor RESTful sin contenedor Java EE: Grizzly, Jersey y Maven

صورة
¿Quieres implementar un servidor RESTful sin usar GlassFish, JBoss, Tomcat, Wildfly, Payara, Jetty, WebLogic ni nada parecido? ¿y en Java sin usar Node.js? Bueno, aquí les comparto una manera de montar de montar un servidor RESTful usando Jersey pero ejecutable desde la línea de comandos.

RESTful Tomcat + Jersey: org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo MessageBodyWriter not found for media type=application/json, type=class

صورة
Si estás tratando de programar RESTful con Jersey sobre Tomcat (porque el Tomcat es más fácil de desplegar y más ligero, Jersey es el más recomendado por Oracle, y RESTful luce bien) y justo cuando quieres probar que devuelva un objeto simple que has creado, lanza el siguiente error: 26-Feb-2016 16:54:00.889 SEVERE [http-nio-18080-exec-2] org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo MessageBodyWriter not found for media type=application/json, type=class... Optas por alguna de estas opciones: Dejas Tomcat porque sabes que, como no es un JavaEE Container, migras a JBoss, Wildfly o lo que sea.. pero Tomcat no lo vuelves a usar porque solo es para web. Ya no usas Jersey, y cuando migras usas algo como SimpleREST de JBoss O usas Spring y te llenas de documentación solo para montar un RESTful simple. Por lo que finalmente dejas de lado tu primera motivación: Tomcat + Jersey. Ahora bien, vamos a revisar qué ocurr

Consumiendo servicios JSON de Liferay usando Jersey

صورة
Liferay viene con servicios RESTful llamados " Servicios Web JSON ", porque utiliza el formato JSON. En este post voy a compartir una manera de consumir desde Jersey para acceder a sus datos.

Revisión del libro: Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON

صورة
Impresionante libro sobre RESTful, JAX-RS, WebSockets y JSON. A pesar que tiene pocos capítulos (sólo cinco), hace una explicación muy detallada y con ejemplos prácticos sobre WebServices y las mejores que viene con HTML5, como por ejemplo el SSE (Server-Sent Events). Lo que más me ha gustado es que se van describiendo poco a poco los conceptos, con ejemplos básicos, concretos y bien explicado. Y el último capítulo desarrolla un proyecto completo utilizando todo lo aprendido. También habla sobre la manipulación de documentos JSON, presenta las características de Servlet 3.1 así como las funcionalidades asíncronas que viene con la versión JavaEE7 tanto para los servlets como para EJB 3.1 y 3.2 El libro lo pueden adquirir en PacktPub.com : http://bit.ly/IbbTOm

RESTful parte 5: REST con autenticación

صورة
Hasta el momento hemos visto un CRUD usando RESTful, con un objeto y varios objetos. Ahora, quiero mostrar el manejo de la seguridad en RESTful usando los estándares de Java EE6.

RESTful con NetBeans 7.3

صورة
Este post es solo una actualización del primer apunte RESTful... la forma más ligera de hacer WebServices (Parte 1)  ya que esa vez se hizo con NetBeans 6.9.1.

Java EE 6 Cookbook for Securing, Tuning, and Extending Enterprise Applications

صورة
@Mick Knutson publica su libro " Java EE 6 Cookbook for Securing, Tuning, and Extending Enterprise Applications " donde se muestra, de manera general y concisa, los aspectos de seguridad, rendimiento y mejorar las aplicaciones Java EE 6. Aquí, mis comentarios del libro.

Probando RESTful con Poster

صورة
Seguimos con RESTful en Java! Ya luego comentaré qué pasó conmigo y por qué no estuve enviando contenido a mi blog. Hasta el momento hemos visto casi de manera abstracta el funcionamiento de RESTful  usando Jersey desde NetBeans . Ahora veremos como probar todo un CRUD de RESTful desde un complemento de Firefox llamado Poster .

RESTful parte 4: Actualizando y eliminando elementos de una colección.

صورة
Todo mantenimiento de objetos debe tener siempre lo que en inglés se llama CRUD (Create - Read - Update - Delete). Hasta ahora hemos visto C y R. Faltan el U y el D. Así que en este artículo hablaremos de ello

RESTful parte 3: Manejando colecciones de objetos y objetos complejos

صورة
Comenzamos este año nuevo con la continuación del (creo yo) más esperado tema de tutorial: RESTful . Y esta vez hablaremos sobre el manejo de colecciones y objetos complejos. Por ahora será de manera básica y veremos poco a poco cómo hacerlo más y más complejo.