Hace unos días tenía que hacer un servicio de Rest pero no quería utilizar los JDK anteriores al 14 de Java. encontré que se puede utilizar un proyecto de Micro Payara con JEE8 (Jakarta) para crear esto.
Lo primero que vamos a hacer es crear un proyecto nuevo en Netbeans usando Maven.
Buscamos el que dice Payara Micro Application, damos clic en siguiente luego de esto debemos de asignarle un nombre a nuestro proyecto y damos clic en siguiente.
En mi caso vamos a seleccionar la versión 5.201 del servidor de Payara. Luego clic en finalizar.
Dentro de mi proyecto voy a crear un paquete nuevo que se va a llamar codebase
En este paquete vamos a crear unas clases POJO que utilizaremos para generar nuestros objetos de Json. Vamos a crear una clase que se llama Article donde vamos a tener unas variables para describir artículos que tendremos en nuestro sistema.
Ahora si es tiempo de agregar nuestro primero servicio de Rest. Siguiendo los pasos a continuación
1. Clic derecho sobre el proyecto
2. New
3. Clic sobre otros
4. Buscamos la carpeta que dice Web Services
5. Y seleccionamos Restful Web Services From Patterns
Ahora hacemos clic en siguiente hasta llegar a esta pantalla. Donde tenemos que hacer algunos cambios. Primero el paquete donde queremos guardar las clases relacionadas a nuestros APIs, el path donde estará ubicado nuestro servicio, el nombre del recurso. Es importante no olvidar cambiar el MIME Type a json que es la forma que nuestro API va a responder. El campo final no es tan importante cambiarlo ya que lo podemos hacer después para retornar una lista de objetos.
Cuando tenemos todo listo damos clic en finalizar.
Esto genera un nuevo paquete con dos clases. La clase que tiene nuestra definición del API que seria ArticleResource y la clase con la configuración de nuestro servicio. Vamos a ir a la clase ArticleResource.
La clase AricleResource va a tener los verbos de Rest. Para nuestro ejemplo vamos a utilizar únicamente el verbo de GET.
En este método vamos a inicializar la lista como se puede ver en la línea 45 y la vamos a retornar.
Ya estamos listos para correr nuestra aplicación.
Cuando corremos nuestra aplicación se va a correr un servidor de Payara en le console out de Netbeans vamos a poder ver la dirección que podemos usar para ver nuestro servicio en el browser.
En el output vamos a poder ver el URL en mi caso esta corriendo sobre el puerto 8081.
Cuando lo abrimos en el navegador de internet se puede ver el resultado de nuestro API de artículos que muestra un json.