SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Creación de un servicio RESTful utilizando Java, NetBeans y WildFly
Descripción:
https://es.wikipedia.org/wiki/Transferencia_de_Estado_Representacional
La transferencia de estado representacional (en inglés representational state transfer) o REST es un
estilo de arquitectura software para sistemas hipermedia distribuidos como la World Wide Web. El
término se originó en el año 2000, en una tesis doctoral sobre la web escrita por Roy Fielding, uno de los
principales autores de la especificación del protocolo HTTP y ha pasado a ser ampliamente utilizado por
la comunidad de desarrollo:
• Un protocolo cliente/servidor sin estado.
• Un conjunto de operaciones bien definidas. (GET, PUT, DELETE, POST …)
o GET: obtener un recurso
o PUT: actualizar o cambiar un recurso
o DELETE: eliminar un recurso
o POST: crear un recurso
• Un concepto importante en REST es la existencia de recursos (elementos de información), que
pueden ser accedidos utilizando un identificador global (un Identificador Uniforme de Recurso)
-URI-.
• API REST: porque proporciona una interfaz de programación de aplicaciones (del inglés
“Application Programming Interface”) es decir, un conjunto de rutinas.
• Web API: Es una plataforma para crear servicios RESTful en .NET Framework.
Objetivos:
• Realizar la creación del servicio RESTful paso a paso.
• Utilizar el servidor de aplicaciones WildFly en modo “standalone”.
• General: contribuir con un tutorial en español de forma autodidacta.
¡Disfruta y comparte!
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Herramientas:
Las herramientas que se utilizaron para realizar este tutorial son las siguientes:
• Windows 10 x64
• Java Development Kit 1.8_131
• WildFly 12.0.0
o http://download.jboss.org/wildfly/12.0.0.Final/wildfly-12.0.0.Final.zip
• Netbeans IDE 8.2
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Paso 0: Configurar e instalar de forma local el servidor de aplicaciones WildFly 12.0:
Para este ejercicio vamos a crear una carpeta en la raíz del disco local con el nombre “Dev” y dentro de
ella vamos a descomprimir el archivo “wildfly-12.0.0.Final.zip”:
Luego, abrimos una consola (terminal para algunos) e ingresamos a la carpeta “bin” que está dentro de
la carpeta “wildfly-12.0.0.Final”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Nota:
-WildFly tiene dos configuraciones: “standalone” y “domain”.
-Tiene una configuración por defecto para la “administración” del servidor y una configuración para las
“aplicaciones desplegadas”.
-Administración: http://localhost:9990
-Aplicaciones desplegadas: http://localhost:8080/xxxx (en donde xxx es la aplicación)
-La tarea que vamos a realizar a continuación consiste en establecer el usuario “administrador” y su
respectiva contraseña, luego configurar y ejecutar el servidor de modo “standalone” con la configuración
“standalone-full”.
Cuando estemos dentro de la carpeta “bin” vamos a ejecutar el siguiente comando: add-user.bat
Luego, elegimos la opción “a” e ingresar el nombre “administrador”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Después de ingresar el nombre del usuario debemos ingresar la contraseña (¡recuerda tú contraseña!) y
confirmarla respectivamente:
Después de confirmar la contraseña se nos pide confirmar otros valores, el siguiente valor lo dejamos
con el valor por defecto, luego los dos valores siguientes los confirmamos con “yes”. Para terminar
presionamos cualquier tecla:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Las instrucciones realizadas con anterioridad fueron para la configuración del usuario, ahora, la siguiente
instrucción es para ejecutar el servidor y comprobar que efectivamente está funcionando.
Ejecutar la siguiente instrucción para ejecutar el servidor con la configuración “standalone-full.xml”:
standalone.bat -c standalone-full.xml
Después de ejecutar la instrucción anterior, se realizan procesos que se pueden observar con el “log” que
el servidor está mostrando:
Y para terminar, en el log que se muestra se puede comprobar que el servidor está escuchando en los
puertos “8080” y “9990” respectivamente:
http://127.0.0.1:8080
http://127.0.0.1:9990
El primero es para las aplicaciones que serán desplegadas y el segundo es para la “consola web
de administración” del servidor:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Nota:
Dejar la consola abierta, porque si se cierra la ejecución del servidor se detendrá.
Comentario: Para detener la ejecución del servidor se puede cerrar la ventana de la consola o bien
ejecutar la combinación de teclas “Ctrl+c” para detener el proceso “bat” que se lanzó con el comando
“standalone.bat”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Paso 1: Comprobar el servidor de aplicaciones WildFly 12.0:
En cualquier navegador ir a la siguiente dirección: http://127.0.0.1:8080
Con la imagen anterior como evidencia, podemos observar que el servidor está escuchando peticiones en
el puerto “8080”.
Las aplicaciones desplegadas en este servidor tendrían una dirección similar a la siguiente:
http://127.0.0.1:8080/miaplicacion
Ahora, vamos a comprobar la “consola web de administración”, para realizar esto, ir a la siguiente
dirección desde cualquier navegador: http://127.0.0.1:9990
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Al ingresar a la consola se nos pedirá el “usuario” y “contraseña” para realizar la autenticación
respectivamente y luego se muestran todas las opciones de la “consola web de administración”
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Con el acceso de forma exitosa a las direcciones: http://127.0.0.1:8080 y http://127.0.0.1:9990 podemos
concluir que la configuración e instalación del servidor de aplicaciones “WildFly 12.0.0” fue correcta.
Ahora bien, proceder a cerrar la consola de línea de comandos para detener el servidor de aplicaciones
respectivamente. Hay dos formas de realizarlo las cuales se describieron al final del “Paso 0”.
Paso 2: Configuración de servidor de aplicaciones en “NetBeans IDE 8.2”:
En este paso vamos a realizar la configuración del servidor de aplicaciones “WildFly 12.0.0” en
“NetBeans IDE 8.2”, para que nos sirva al momento de realizar el despliegue de nuestra “aplicación
web”.
Abrir “NetBeans IDE 8.2” e ir a la pestaña “Services” y luego seleccionar el ítem “Servers”.
Después de seleccionar el ítem “Servers”, presionar el ítem con el botón derecho del ratón y seleccionar
la opción “Add Server”:
Después de seleccionar la opción “Add Server”, vamos a elegir la opción “WildFly Application Server”,
dejamos el nombre que trae por defecto “WildFly Application Server” y luego presionamos el botón
“Next >”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Después de presionar el botón “Next >”, vamos a ingresar los valores que corresponden a la ruta donde
está los binarios del servidor y el archivo de configuración respectivamente. Para nuestro ejemplo los
valores son los siguientes:
“Server Location”: C:Devwildfly-12.0.0.Final
“Server Configuration”: C:Devwildfly-12.0.0.Finalstandaloneconfigurationstandalone-full.xml
Proceder a ingresar los valores respectivamente utilizando el botón “Browse” o de forma manual:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Después de ingresar los valores, presionamos el botón “Next >” y se nos mostrarán los valores
respectivos del servidor de aplicaciones:
Para terminar, presionamos el botón “Finish” y luego podremos observar que, en la sección “Servers” de
la pestaña “Services” está disponible el ítem “WildFly Application Server”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Paso 3: Construcción de aplicación web y despliegue en servidor:
En este paso vamos a construir una “aplicación web” utilizando “NetBeans IDE 8.2” respectivamente.
Después de abrir “NetBeans IDE 8.2” ir a la opción “File” del menú y elegir la opción “New Project…”:
Luego, seleccionar la categoría “Java Web” y elegir el proyecto “Web Application”:
Seguido, presionar el botón “Next >” y luego se nos pedirá la información acerca del proyecto a generar
(nombre y ubicación), para este ejercicio vamos a utilizar los siguientes valores:
Project Name: MiApWeb
Project Location: C:DevApWeb (esta carpeta se puede crear utilizando el botón “Browse”)
Project Folder: Este valor lo genera “NetBeans IDE 8.2” de forma automática.
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Después de ingresar los valores respectivos, presionar el botón “Next >” y se nos pedirá seleccionar el
servidor de aplicaciones y la versión de “Java EE” a utilizar, para este ejercicio vamos a seleccionar los
valores:
Server: WildFly Application Server
Java EE Version: Java EE 7 Web
Context Path: /MiApWeb
Después de seleccionar e ingresar los valores respectivos, presionar el botón “Next >” y se nos pedirá la
confirmación si deseamos utilizar algún “Framework”, para este ejercicio no utilizaremos ningún
“Framework”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Para terminar presionar el botón “Finish” y luego se iniciará el proceso para generar el proyecto:
Por último, “NetBeans IDE 8.2” mostrará el proyecto generado:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Con el proyecto “MiApWeb” generado por “NetBeans IDE 8.2”, vamos a realizar un despliegue
inmediato para realizar una prueba funcional.
Dentro del árbol (estructura) de archivos del proyecto hay un ítem llamado “Web Pages”, dentro de este
ítem está el archivo “index.html”, el cual es la página por defecto que tendrá la aplicación desplegada en
el servidor de aplicaciones. Vamos a modificar algunos valores de este archivo, el contenido actual es el
siguiente:
Y vamos a cambiar el valor de la etiqueta HTML “<title>” y el valor de la etiqueta “<div>”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Después de realizar los cambios en el archivo “index.html”, procedemos a guardar los cambios (Ctrl+s)
y luego realizamos un proceso de limpieza y construcción del proyecto. Para realizar el proceso de
limpieza y construcción seleccionamos el proyecto “MiApWeb”, seguido presionamos el ítem con el
botón derecho del ratón y seleccionamos la opción “Clean and Build”:
El proceso “Clean and Build” genera el archivo “MiApWeb.war” el cual será el que debemos desplegar
en el servidor de aplicaciones. Podemos observar en la parte inferior de “NetBeans IDE 8.2” que dentro
de la pestaña “Output” se muestra el resultado respectivamente:
Luego que el proceso de limpieza y construcción se ha realizado con éxito, vamos a proceder a realizar
el despliegue de nuestra aplicación “MyApWeb” en el servidor de aplicaciones “WildFly Application
Server”.
Para realizar el proceso de despliegue, seleccionamos el proyecto “MiApWeb”, luego presionamos el
ítem con el botón derecho del ratón y seleccionamos opción “Deploy”, luego observaremos los registros
que se muestran en las pestañas de la salida “Output”:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
A continuación los registros generados en la pestaña “Output”: en la pestaña “MiApWeb (run-deploy)”
podremos observar la ruta en donde se ha realizado el despliegue:
Y en la sección “WildFly Application Server” podremos observar que el componente “MiApWeb.war”
fue desplegado con éxito:
En español JOSE DE PAZ @_jdepaz midesatech@gmail.com
___________________________________________________________________________________________
Ahora bien, la prueba final de este primer despliegue es la comprobación mediante el uso del navegador
utilizando la siguiente dirección: http://127.0.0.1:8080/MiApWeb
Con la evidencia anterior podemos comprobar lo siguiente:
• Cuando se realiza el proceso de despliegue, “NetBeans IDE 8.2” realiza lo siguiente:
o Compilación del proyecto y generación del componente “MiApWeb.war”.
o Inicialización del servidor de aplicaciones “WildFly Application Server”.
• El proyecto “MiApWeb” ha sido generado y compilado con éxito.
• El componente “MiApWeb.war” ha sido desplegado con éxito en el servidor de aplicaciones
“WildFly 12.0.0”.
• El despliegue del componente “MiApWeb.war” ha sido desplegado en modo “standalone” en el
servidor de aplicaciones “WildFly 12.0.0”.

Más contenido relacionado

La actualidad más candente

[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) [발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) 동현 김
 
Virtualización de Servidores con VMware vSphere 6
Virtualización de Servidores con VMware vSphere 6Virtualización de Servidores con VMware vSphere 6
Virtualización de Servidores con VMware vSphere 6David Pérez Moriche
 
Ejercicios GPOs Windows 2012
Ejercicios GPOs Windows 2012Ejercicios GPOs Windows 2012
Ejercicios GPOs Windows 2012DanielMeneses49
 
ACRN Kata Container on ACRN
ACRN Kata Container on ACRNACRN Kata Container on ACRN
ACRN Kata Container on ACRNProject ACRN
 
Seguridad perimetral - Mikrotik Firewall
Seguridad perimetral - Mikrotik FirewallSeguridad perimetral - Mikrotik Firewall
Seguridad perimetral - Mikrotik FirewallVanesa Rodríguez Percy
 
Postfix y Dovecot con usuarios virtuales mysql en Debian Wheezy
Postfix y Dovecot con usuarios virtuales mysql en Debian WheezyPostfix y Dovecot con usuarios virtuales mysql en Debian Wheezy
Postfix y Dovecot con usuarios virtuales mysql en Debian WheezyHenry Cristian Cuesta Vega
 
Guia e-instalacion-de-windows-server-2008-paso-a-paso
Guia e-instalacion-de-windows-server-2008-paso-a-pasoGuia e-instalacion-de-windows-server-2008-paso-a-paso
Guia e-instalacion-de-windows-server-2008-paso-a-pasoIestp Instituto Superior
 
Práctica Active Directory 1-12
Práctica Active Directory 1-12Práctica Active Directory 1-12
Práctica Active Directory 1-12Adrian Gabriel
 
10 guia sistemas 21 bios (1)
10 guia sistemas 21 bios (1)10 guia sistemas 21 bios (1)
10 guia sistemas 21 bios (1)Diego Kilatonn
 
Pasos para instalar windows xp en virtual box
Pasos para instalar windows xp en virtual boxPasos para instalar windows xp en virtual box
Pasos para instalar windows xp en virtual boxTonMil_17
 
2. Configuración OSPF
2. Configuración OSPF2. Configuración OSPF
2. Configuración OSPFDavid Narváez
 
Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)
Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)
Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)I Putu Hariyadi
 
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화OpenStack Korea Community
 
File System Resource Mangement
File System Resource MangementFile System Resource Mangement
File System Resource MangementRaphael Ejike
 
Enrutamiento estatico-con-gns3
Enrutamiento estatico-con-gns3Enrutamiento estatico-con-gns3
Enrutamiento estatico-con-gns3Javierandres64
 

La actualidad más candente (20)

[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) [발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
 
Virtualización de Servidores con VMware vSphere 6
Virtualización de Servidores con VMware vSphere 6Virtualización de Servidores con VMware vSphere 6
Virtualización de Servidores con VMware vSphere 6
 
Ejercicios GPOs Windows 2012
Ejercicios GPOs Windows 2012Ejercicios GPOs Windows 2012
Ejercicios GPOs Windows 2012
 
ACRN Kata Container on ACRN
ACRN Kata Container on ACRNACRN Kata Container on ACRN
ACRN Kata Container on ACRN
 
Seguridad perimetral - Mikrotik Firewall
Seguridad perimetral - Mikrotik FirewallSeguridad perimetral - Mikrotik Firewall
Seguridad perimetral - Mikrotik Firewall
 
Practica active directory
Practica active directoryPractica active directory
Practica active directory
 
Postfix y Dovecot con usuarios virtuales mysql en Debian Wheezy
Postfix y Dovecot con usuarios virtuales mysql en Debian WheezyPostfix y Dovecot con usuarios virtuales mysql en Debian Wheezy
Postfix y Dovecot con usuarios virtuales mysql en Debian Wheezy
 
Ejercicios LDAP
Ejercicios LDAPEjercicios LDAP
Ejercicios LDAP
 
Apache
ApacheApache
Apache
 
Guia e-instalacion-de-windows-server-2008-paso-a-paso
Guia e-instalacion-de-windows-server-2008-paso-a-pasoGuia e-instalacion-de-windows-server-2008-paso-a-paso
Guia e-instalacion-de-windows-server-2008-paso-a-paso
 
Práctica Active Directory 1-12
Práctica Active Directory 1-12Práctica Active Directory 1-12
Práctica Active Directory 1-12
 
10 guia sistemas 21 bios (1)
10 guia sistemas 21 bios (1)10 guia sistemas 21 bios (1)
10 guia sistemas 21 bios (1)
 
Pasos para instalar windows xp en virtual box
Pasos para instalar windows xp en virtual boxPasos para instalar windows xp en virtual box
Pasos para instalar windows xp en virtual box
 
2. Configuración OSPF
2. Configuración OSPF2. Configuración OSPF
2. Configuración OSPF
 
Oracle Java License Training
Oracle Java License TrainingOracle Java License Training
Oracle Java License Training
 
Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)
Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)
Modul One Day Workshop Proxmox VE 5.3 High Availability (HA)
 
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
[OpenStack 하반기 스터디] Docker를 이용한 OpenStack 가상화
 
File System Resource Mangement
File System Resource MangementFile System Resource Mangement
File System Resource Mangement
 
Enrutamiento estatico-con-gns3
Enrutamiento estatico-con-gns3Enrutamiento estatico-con-gns3
Enrutamiento estatico-con-gns3
 
Active directory
Active directoryActive directory
Active directory
 

Similar a Creación de un servicio RESTful en Java

Manual reportes jsp
Manual reportes jspManual reportes jsp
Manual reportes jspjujuju12
 
William fabricio manual de sistemas sas
William fabricio manual de sistemas sasWilliam fabricio manual de sistemas sas
William fabricio manual de sistemas sasRafael Toro
 
INSTALACION DE SQL SERVER 2012.pdf
INSTALACION DE SQL SERVER 2012.pdfINSTALACION DE SQL SERVER 2012.pdf
INSTALACION DE SQL SERVER 2012.pdfOsoGG
 
Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012Gustavo Inocente Chacón
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"www.encamina.com
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Jose Fernandez
 
Reportes En J Developer Parte 1 Y 2
Reportes En J Developer   Parte 1 Y 2Reportes En J Developer   Parte 1 Y 2
Reportes En J Developer Parte 1 Y 2Steven Gomez
 
Sistemas Operativos Web
Sistemas Operativos WebSistemas Operativos Web
Sistemas Operativos Websheila11
 
Instalación oracle database 12c
Instalación oracle database 12cInstalación oracle database 12c
Instalación oracle database 12cWiki Gi
 
Infografia farmacia laravel
Infografia farmacia laravelInfografia farmacia laravel
Infografia farmacia laravelFUNDET ECUADOR
 
Programacion - Php
Programacion - PhpProgramacion - Php
Programacion - PhpPROD LARD
 
Instalacion de Postrgre sql en ubuntu
Instalacion de Postrgre sql en ubuntuInstalacion de Postrgre sql en ubuntu
Instalacion de Postrgre sql en ubuntuDavid Vevelas
 
Implementación y Administración Hyper-V 2008 R2
Implementación y Administración Hyper-V 2008 R2Implementación y Administración Hyper-V 2008 R2
Implementación y Administración Hyper-V 2008 R2RaGaZoMe
 
Infografia empleados laravel
Infografia empleados laravelInfografia empleados laravel
Infografia empleados laravelFUNDET ECUADOR
 
Servidores Web y de Base de Datos
 Servidores Web y de Base de Datos  Servidores Web y de Base de Datos
Servidores Web y de Base de Datos Sergio Cadenas
 

Similar a Creación de un servicio RESTful en Java (20)

Manual reportes jsp
Manual reportes jspManual reportes jsp
Manual reportes jsp
 
William fabricio manual de sistemas sas
William fabricio manual de sistemas sasWilliam fabricio manual de sistemas sas
William fabricio manual de sistemas sas
 
Manual php nuke
Manual php nukeManual php nuke
Manual php nuke
 
Manual php nuke
Manual php nukeManual php nuke
Manual php nuke
 
Manual php nuke
Manual php nukeManual php nuke
Manual php nuke
 
INSTALACION DE SQL SERVER 2012.pdf
INSTALACION DE SQL SERVER 2012.pdfINSTALACION DE SQL SERVER 2012.pdf
INSTALACION DE SQL SERVER 2012.pdf
 
Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.
 
Reportes En J Developer Parte 1 Y 2
Reportes En J Developer   Parte 1 Y 2Reportes En J Developer   Parte 1 Y 2
Reportes En J Developer Parte 1 Y 2
 
Sistemas Operativos Web
Sistemas Operativos WebSistemas Operativos Web
Sistemas Operativos Web
 
Instalación oracle database 12c
Instalación oracle database 12cInstalación oracle database 12c
Instalación oracle database 12c
 
Infografia farmacia laravel
Infografia farmacia laravelInfografia farmacia laravel
Infografia farmacia laravel
 
Programacion - Php
Programacion - PhpProgramacion - Php
Programacion - Php
 
Instalacion de Postrgre sql en ubuntu
Instalacion de Postrgre sql en ubuntuInstalacion de Postrgre sql en ubuntu
Instalacion de Postrgre sql en ubuntu
 
Implementación y Administración Hyper-V 2008 R2
Implementación y Administración Hyper-V 2008 R2Implementación y Administración Hyper-V 2008 R2
Implementación y Administración Hyper-V 2008 R2
 
Infografia empleados laravel
Infografia empleados laravelInfografia empleados laravel
Infografia empleados laravel
 
Phpmyadmin
PhpmyadminPhpmyadmin
Phpmyadmin
 
Proyecto visual studio
Proyecto visual studioProyecto visual studio
Proyecto visual studio
 
Servidores Web y de Base de Datos
 Servidores Web y de Base de Datos  Servidores Web y de Base de Datos
Servidores Web y de Base de Datos
 

Más de Desarrollo Escuintla

Más de Desarrollo Escuintla (8)

Lazarus
LazarusLazarus
Lazarus
 
Tutorial consumir DLL C++ en C#
Tutorial consumir DLL C++ en C#Tutorial consumir DLL C++ en C#
Tutorial consumir DLL C++ en C#
 
FriendlyARM Mini2440 Ubuntu 10.04.4
FriendlyARM Mini2440 Ubuntu 10.04.4FriendlyARM Mini2440 Ubuntu 10.04.4
FriendlyARM Mini2440 Ubuntu 10.04.4
 
NReports -Diseñador y Generador de Informes-
NReports -Diseñador y Generador de Informes-NReports -Diseñador y Generador de Informes-
NReports -Diseñador y Generador de Informes-
 
Tutorial usando FIBplus en Report Manager
Tutorial usando FIBplus en Report ManagerTutorial usando FIBplus en Report Manager
Tutorial usando FIBplus en Report Manager
 
Utilizando outlook para revision de correo electronico
Utilizando outlook para revision de correo electronicoUtilizando outlook para revision de correo electronico
Utilizando outlook para revision de correo electronico
 
Vulnerabilidad thomson
Vulnerabilidad thomsonVulnerabilidad thomson
Vulnerabilidad thomson
 
Vulnerabilidad thomson
Vulnerabilidad thomsonVulnerabilidad thomson
Vulnerabilidad thomson
 

Último

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 

Último (15)

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 

Creación de un servicio RESTful en Java

  • 1. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Creación de un servicio RESTful utilizando Java, NetBeans y WildFly Descripción: https://es.wikipedia.org/wiki/Transferencia_de_Estado_Representacional La transferencia de estado representacional (en inglés representational state transfer) o REST es un estilo de arquitectura software para sistemas hipermedia distribuidos como la World Wide Web. El término se originó en el año 2000, en una tesis doctoral sobre la web escrita por Roy Fielding, uno de los principales autores de la especificación del protocolo HTTP y ha pasado a ser ampliamente utilizado por la comunidad de desarrollo: • Un protocolo cliente/servidor sin estado. • Un conjunto de operaciones bien definidas. (GET, PUT, DELETE, POST …) o GET: obtener un recurso o PUT: actualizar o cambiar un recurso o DELETE: eliminar un recurso o POST: crear un recurso • Un concepto importante en REST es la existencia de recursos (elementos de información), que pueden ser accedidos utilizando un identificador global (un Identificador Uniforme de Recurso) -URI-. • API REST: porque proporciona una interfaz de programación de aplicaciones (del inglés “Application Programming Interface”) es decir, un conjunto de rutinas. • Web API: Es una plataforma para crear servicios RESTful en .NET Framework. Objetivos: • Realizar la creación del servicio RESTful paso a paso. • Utilizar el servidor de aplicaciones WildFly en modo “standalone”. • General: contribuir con un tutorial en español de forma autodidacta. ¡Disfruta y comparte!
  • 2. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Herramientas: Las herramientas que se utilizaron para realizar este tutorial son las siguientes: • Windows 10 x64 • Java Development Kit 1.8_131 • WildFly 12.0.0 o http://download.jboss.org/wildfly/12.0.0.Final/wildfly-12.0.0.Final.zip • Netbeans IDE 8.2
  • 3. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Paso 0: Configurar e instalar de forma local el servidor de aplicaciones WildFly 12.0: Para este ejercicio vamos a crear una carpeta en la raíz del disco local con el nombre “Dev” y dentro de ella vamos a descomprimir el archivo “wildfly-12.0.0.Final.zip”: Luego, abrimos una consola (terminal para algunos) e ingresamos a la carpeta “bin” que está dentro de la carpeta “wildfly-12.0.0.Final”:
  • 4. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Nota: -WildFly tiene dos configuraciones: “standalone” y “domain”. -Tiene una configuración por defecto para la “administración” del servidor y una configuración para las “aplicaciones desplegadas”. -Administración: http://localhost:9990 -Aplicaciones desplegadas: http://localhost:8080/xxxx (en donde xxx es la aplicación) -La tarea que vamos a realizar a continuación consiste en establecer el usuario “administrador” y su respectiva contraseña, luego configurar y ejecutar el servidor de modo “standalone” con la configuración “standalone-full”. Cuando estemos dentro de la carpeta “bin” vamos a ejecutar el siguiente comando: add-user.bat Luego, elegimos la opción “a” e ingresar el nombre “administrador”:
  • 5. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Después de ingresar el nombre del usuario debemos ingresar la contraseña (¡recuerda tú contraseña!) y confirmarla respectivamente: Después de confirmar la contraseña se nos pide confirmar otros valores, el siguiente valor lo dejamos con el valor por defecto, luego los dos valores siguientes los confirmamos con “yes”. Para terminar presionamos cualquier tecla:
  • 6. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Las instrucciones realizadas con anterioridad fueron para la configuración del usuario, ahora, la siguiente instrucción es para ejecutar el servidor y comprobar que efectivamente está funcionando. Ejecutar la siguiente instrucción para ejecutar el servidor con la configuración “standalone-full.xml”: standalone.bat -c standalone-full.xml Después de ejecutar la instrucción anterior, se realizan procesos que se pueden observar con el “log” que el servidor está mostrando: Y para terminar, en el log que se muestra se puede comprobar que el servidor está escuchando en los puertos “8080” y “9990” respectivamente: http://127.0.0.1:8080 http://127.0.0.1:9990 El primero es para las aplicaciones que serán desplegadas y el segundo es para la “consola web de administración” del servidor:
  • 7. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Nota: Dejar la consola abierta, porque si se cierra la ejecución del servidor se detendrá. Comentario: Para detener la ejecución del servidor se puede cerrar la ventana de la consola o bien ejecutar la combinación de teclas “Ctrl+c” para detener el proceso “bat” que se lanzó con el comando “standalone.bat”:
  • 8. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Paso 1: Comprobar el servidor de aplicaciones WildFly 12.0: En cualquier navegador ir a la siguiente dirección: http://127.0.0.1:8080 Con la imagen anterior como evidencia, podemos observar que el servidor está escuchando peticiones en el puerto “8080”. Las aplicaciones desplegadas en este servidor tendrían una dirección similar a la siguiente: http://127.0.0.1:8080/miaplicacion Ahora, vamos a comprobar la “consola web de administración”, para realizar esto, ir a la siguiente dirección desde cualquier navegador: http://127.0.0.1:9990
  • 9. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Al ingresar a la consola se nos pedirá el “usuario” y “contraseña” para realizar la autenticación respectivamente y luego se muestran todas las opciones de la “consola web de administración”
  • 10. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Con el acceso de forma exitosa a las direcciones: http://127.0.0.1:8080 y http://127.0.0.1:9990 podemos concluir que la configuración e instalación del servidor de aplicaciones “WildFly 12.0.0” fue correcta. Ahora bien, proceder a cerrar la consola de línea de comandos para detener el servidor de aplicaciones respectivamente. Hay dos formas de realizarlo las cuales se describieron al final del “Paso 0”. Paso 2: Configuración de servidor de aplicaciones en “NetBeans IDE 8.2”: En este paso vamos a realizar la configuración del servidor de aplicaciones “WildFly 12.0.0” en “NetBeans IDE 8.2”, para que nos sirva al momento de realizar el despliegue de nuestra “aplicación web”. Abrir “NetBeans IDE 8.2” e ir a la pestaña “Services” y luego seleccionar el ítem “Servers”. Después de seleccionar el ítem “Servers”, presionar el ítem con el botón derecho del ratón y seleccionar la opción “Add Server”: Después de seleccionar la opción “Add Server”, vamos a elegir la opción “WildFly Application Server”, dejamos el nombre que trae por defecto “WildFly Application Server” y luego presionamos el botón “Next >”:
  • 11. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Después de presionar el botón “Next >”, vamos a ingresar los valores que corresponden a la ruta donde está los binarios del servidor y el archivo de configuración respectivamente. Para nuestro ejemplo los valores son los siguientes: “Server Location”: C:Devwildfly-12.0.0.Final “Server Configuration”: C:Devwildfly-12.0.0.Finalstandaloneconfigurationstandalone-full.xml Proceder a ingresar los valores respectivamente utilizando el botón “Browse” o de forma manual:
  • 12. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Después de ingresar los valores, presionamos el botón “Next >” y se nos mostrarán los valores respectivos del servidor de aplicaciones: Para terminar, presionamos el botón “Finish” y luego podremos observar que, en la sección “Servers” de la pestaña “Services” está disponible el ítem “WildFly Application Server”:
  • 13. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Paso 3: Construcción de aplicación web y despliegue en servidor: En este paso vamos a construir una “aplicación web” utilizando “NetBeans IDE 8.2” respectivamente. Después de abrir “NetBeans IDE 8.2” ir a la opción “File” del menú y elegir la opción “New Project…”: Luego, seleccionar la categoría “Java Web” y elegir el proyecto “Web Application”: Seguido, presionar el botón “Next >” y luego se nos pedirá la información acerca del proyecto a generar (nombre y ubicación), para este ejercicio vamos a utilizar los siguientes valores: Project Name: MiApWeb Project Location: C:DevApWeb (esta carpeta se puede crear utilizando el botón “Browse”) Project Folder: Este valor lo genera “NetBeans IDE 8.2” de forma automática.
  • 14. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Después de ingresar los valores respectivos, presionar el botón “Next >” y se nos pedirá seleccionar el servidor de aplicaciones y la versión de “Java EE” a utilizar, para este ejercicio vamos a seleccionar los valores: Server: WildFly Application Server Java EE Version: Java EE 7 Web Context Path: /MiApWeb Después de seleccionar e ingresar los valores respectivos, presionar el botón “Next >” y se nos pedirá la confirmación si deseamos utilizar algún “Framework”, para este ejercicio no utilizaremos ningún “Framework”:
  • 15. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Para terminar presionar el botón “Finish” y luego se iniciará el proceso para generar el proyecto: Por último, “NetBeans IDE 8.2” mostrará el proyecto generado:
  • 16. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Con el proyecto “MiApWeb” generado por “NetBeans IDE 8.2”, vamos a realizar un despliegue inmediato para realizar una prueba funcional. Dentro del árbol (estructura) de archivos del proyecto hay un ítem llamado “Web Pages”, dentro de este ítem está el archivo “index.html”, el cual es la página por defecto que tendrá la aplicación desplegada en el servidor de aplicaciones. Vamos a modificar algunos valores de este archivo, el contenido actual es el siguiente: Y vamos a cambiar el valor de la etiqueta HTML “<title>” y el valor de la etiqueta “<div>”:
  • 17. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Después de realizar los cambios en el archivo “index.html”, procedemos a guardar los cambios (Ctrl+s) y luego realizamos un proceso de limpieza y construcción del proyecto. Para realizar el proceso de limpieza y construcción seleccionamos el proyecto “MiApWeb”, seguido presionamos el ítem con el botón derecho del ratón y seleccionamos la opción “Clean and Build”: El proceso “Clean and Build” genera el archivo “MiApWeb.war” el cual será el que debemos desplegar en el servidor de aplicaciones. Podemos observar en la parte inferior de “NetBeans IDE 8.2” que dentro de la pestaña “Output” se muestra el resultado respectivamente: Luego que el proceso de limpieza y construcción se ha realizado con éxito, vamos a proceder a realizar el despliegue de nuestra aplicación “MyApWeb” en el servidor de aplicaciones “WildFly Application Server”. Para realizar el proceso de despliegue, seleccionamos el proyecto “MiApWeb”, luego presionamos el ítem con el botón derecho del ratón y seleccionamos opción “Deploy”, luego observaremos los registros que se muestran en las pestañas de la salida “Output”:
  • 18. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ A continuación los registros generados en la pestaña “Output”: en la pestaña “MiApWeb (run-deploy)” podremos observar la ruta en donde se ha realizado el despliegue: Y en la sección “WildFly Application Server” podremos observar que el componente “MiApWeb.war” fue desplegado con éxito:
  • 19. En español JOSE DE PAZ @_jdepaz midesatech@gmail.com ___________________________________________________________________________________________ Ahora bien, la prueba final de este primer despliegue es la comprobación mediante el uso del navegador utilizando la siguiente dirección: http://127.0.0.1:8080/MiApWeb Con la evidencia anterior podemos comprobar lo siguiente: • Cuando se realiza el proceso de despliegue, “NetBeans IDE 8.2” realiza lo siguiente: o Compilación del proyecto y generación del componente “MiApWeb.war”. o Inicialización del servidor de aplicaciones “WildFly Application Server”. • El proyecto “MiApWeb” ha sido generado y compilado con éxito. • El componente “MiApWeb.war” ha sido desplegado con éxito en el servidor de aplicaciones “WildFly 12.0.0”. • El despliegue del componente “MiApWeb.war” ha sido desplegado en modo “standalone” en el servidor de aplicaciones “WildFly 12.0.0”.