SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 1 de 9
Manual de creación y uso de un Web Service REST
REQUERIMIENTOS PREVIOS
Se requiere instalar el IDE NetBeans 8.0.2, para lo cual se debe ir
al sitio web https://netbeans.org/ y descargar el paquete “Java EE”
o el paquete “All”, ya que son los que incluyen el servidor web de
aplicaciones GlassFish, JEE (para usar jsp), y HTML, todos ellos
necesarios el uso de webservices.
De no contar con JDK (Java Development Kit), debe ser instalado
previo a la instalación de NetBeans, ya que es el que provee las he-
rramientas de desarrollo para éste IDE. JDK se puede descargar
desde www.oracle.com donde también hay disponible una versión de NetBeans que incluye JDK.
1. CREACIÓN DE UN SERVICIO WEB
1.1. Creación del nuevo proyecto
Una vez abierto NetBeans se
debe crear un nuevo proyecto el
cual contendrá el sitio web de la
aplicación y el servicio web.
Para ello se debe dirigir al menú
superior y dar clic en “File”,
posteriormente dar clic en “New
Project…” lo cual abrirá un cua-
dro de diálogo.
Ya que lo que se pretende es
realizar un servicio web, al crear
el proyecto, en el primer paso
(Elección del proyecto) se debe
elegir la categoría “Java Web” y del lado derecho, en
tipos de proyectos seleccionar “Web Application”. Una
vez hecho esto es necesario dar clic en el botón [Next]
para continuar con el proceso.
Este manual será guiado usando como ejemplo un muy
pequeño sistema que manipule datos de alumnos titula-
dos. Así pues, para el segundo paso de la creación del
proyecto, se deben escribir el nombre que se le desig-
nará al proyecto, en este caso será “TitulacionAlum-
nos”. Opcionalmente se puede definir otra ubicación
Pantalla 2. Creación de un nuevo proyecto
Pantalla 3. Elección de tipo de proyecto a crear
Pantalla 1. Inicialización de NetBeans
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 2 de 9
para guardar el proyecto usando el botón [Browse…], te-
niendo en cuenta el cambio de ruta no afectará al proyecto.
Así mismo, al crear el servicio web se producirán depen-
dencias de librerías, y en caso de que se desee ubicarlas en
una carpeta en específico habrá que activar e indicar la ubi-
cación para almacenarlas. Una vez definidos los parámetros
deberá darse clic en el botón [Next >].
El tercer paso se debe definir el servidor sobre el
que se ejecutará el servicio web así como la versión de Java
EE que se desee usar para el desarrollo. Si se emplea la úl-
tima versión de NetBeans se pueden emplear los valores
por defecto, es decir, servidor web “GlasFish Server 4.1”
y la plataforma “Java EE 7 Web” y dar clic en el botón
[Next >].
En el cuarto y último paso se debe indicar si se
desea emplear un framework para el desarrollo del pro-
yecto, pero ya que este manual aborda un ejemplo básico,
no es necesario hacer la selección de ninguno de ellos, con
lo cual se puede dar clic en el botón [Finish] para que co-
mience la generación del proyecto, es decir, la estructura
de carpetas y archivos esenciales necesarios del proyecto.
Una vez finalizada la creación del proyecto, deberá apare-
cer el proyecto recién creado en el panel izquierdo dentro
de la pestaña “Projects”.
1.2. Preparar el entorno previo para usar REST
El proyecto recién creado hará uso de REST, por lo que previamente
habrá que simular un entorno similar a como lo ofrecería un servidor que
provea el servicio web. Para ello será necesario inicializar los servidores
de aplicaciones y de bases de datos, así como contar con una base de
datos que contenga información que pueda ser manipulable. El primer
paso será ir al panel “Services”, desplegar el elemento “Servers” y dar
clic derecho sobre GlassFish para iniciarlo.
Pantalla 4. Nombrar y establecer ubicación
del proyecto
Pantalla 5. Configuraciones y servidor
Pantalla 7. Elección de frameworks
Pantalla 6. Proyecto correctamente creado
Pantalla 8. Iniciar GlassFish
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 3 de 9
Si todo salió bien, en el panel Output de-
berá aparecer la palabra “started” al final de los
pasos.
Posteriormente se procederá a hacer un
paso similar pero ahora dando clic derecho sobre
“Java DB” y luego en “Start Server”, el cual es el
servidor de bases de datos incluido en NetBeans.
Aunque es posible crear una completa base de datos propia, este ma-
nual muestra la creación de una tabla en la base de datos de muestra de
Apache Derby. Para ello es necesario dirigirse al panel “Services” y seguir
la ruta Databases > jdbc.derby > APP para posteriormente dar clic de-
recho sobre “Tables” y seleccionar la opción “Create Table…”.
El cuadro de diálogo recién abierto solicitará un nombre de tabla, así
como agregar los campos que se deseen. Para este ejemplo se han usado
los el nombre de tabla “titulación” y los campos id, cuenta, nombre,
temaTesis y fechaTesis, tal como se mues-
tra en la imagen. Si todo salió bien, en el
panel de “Services” deberá aparecer la
nueva tabla que fue nombrada como “TI-
TULACIÓN”.
A continuación se introducirán manualmente datos a la tabla re-
cién creada con el fin de testearla más adelante. Para ello es necesario dar
clic derecho sobre la tabla “TITULACIÓN” y desde el menú contextual
que emerge elegir la opción “View data…”, lo cual desplegará en el área
de trabajo la librería jdbc.derby para que puedan manipularse los datos
tanto con instrucciones de comando como con un asistente.
Pantalla 9. Correcta inicialización de GlassFish
Pantalla 10. Iniciar Ser-
vidor de BD
Pantalla 11. Correcta inicialización del servidor Apache Derby
Pantalla 12. Creación de una
tabla en la BD
Pantalla 14. Creación de la tabla de la BD
Pantalla 13. Creación co-
rrecta de la tabla
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 4 de 9
Para hacerlo más simple se insertarán nuevos registros desde el
asistente, así que será dar clic sobre el botón “Insert Record(s)” que se
encuentra justo debajo de la pestaña “select * from….”
Desde el cuadro de diálogo podrán ingresarse
tantos registros como se desee simplemente dando clic
sobre el botón sobre el botón [Add Row…] cada que
quiera agregarse uno.
Si la inserción de los datos fue correcta deberían
mostrarse éstos dentro del panel de resultados de las
consultas.
Pantalla 18. Visualización de datos recién agregados a la tabla de la BD
1.3. Configurar el proyecto para usar REST
Ya que el proyecto debe conectarse a una base de datos, requerirá de libre-
rías para su correcto funcionamiento con Apache Derby. Así pues el si-
guiente paso es modificar el proyecto para agregar las librerías correspon-
dientes, para ello hay que dar cli derecho sobre el proyecto y seleccionar la
última de las opciones
llamada “Properties”, lo
cual abrirá una ventana
en donde se ha de ubicar
en el apartado “Libra-
ries”, después dar clic
sobre el botón [Add
JAR/Folder].
Pantalla 15. Abrir panel de
visualización de datos
Pantalla 16. Botón para insertar nuevos registros
Pantalla 17. Agregar registros a la tabla
Pantalla 19. Editar propie-
dades del proyecto
Pantalla 20. Propiedades del proyecto
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 5 de 9
Es necesario agregar las librerías “derby.jar” y “derbyclient.jar”, ambas ubicadas en la ruta
de instalación de GlassFish y que comúnmente es C:Program FilesGlassFish-4.1jabadblib. Con-
firmar que se hayan agregado dichas librerías en la ventana de propiedades del proyecto, si es así,
entonces se pueden guardar los cambios
Una vez hecho esto se procederá a realizar una
clase Java que permita manipular la base de datos de
forma autónoma. Este paso lo que hará es que dentro
de la clase pondrá tantos atributos como campos tenga
la tabla que se creó anteriormente. Para ello hará falta
dar clic derecho sobre el proyecto, situarse sobre
“New” y dar clic en “Entity Classes from Dara-
base…” Se abrirá una ventana donde deberá elegirse
la base de datos, y posteriormente seleccionar la tabla,
usando el botón [Add >], para que pase a la columna
de tablas seleccionadas.
En el siguiente paso de esta ventana solo hará
falta indicar el nombre del paquete donde se almacena-
rán todas las dependencias. Para este ejemplo se usó el
nombre “datos”.
Pantalla 21. Agregar librerías de Bases de Datos al proyecto
Pantalla 22. Crear una clase Java a partir de la BD
Pantalla 23. Seleccionar tablas de la BD
Pantalla 24. Configurar las clases y paquetes
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 6 de 9
El siguiente paso de esta ventana no se realizan mo-
dificaciones en las opciones de mapeo a la base de datos. Una
vez que finalice el proceso, se podrá observar en el panel del
proyecto, dentro de “Source Package” tanto el paquete “da-
tos” que fue recién creado y contiene la clase generada para
manipular la base de datos, así como el paquete “service” que
también fue recién creado y contiene las diferentes vistas
para que se comunique el servicio web .
Pantalla 26. Archivos recién creados incluida la clase Java para manipular la BD
1.4. Crear el servicio web RESTFul
Llegando a este punto, la creación del nuevo servicio
web usando REST es muy fácil. El primer paso dar
clic derecho sobre el proyecto para agregar un
“RESTful Web Services from Entity Classes…”, es
decir una manera de crear el servicio web basándose
en los parámetros que aparecen en la clase Java que
se creó con anterioridad. Solo hará falta indicar la
clase que será usada y el nombre del paquete de las
librerías.
Pantalla 25. Concluir creación de clase de
BD.
Pantalla 27. Crear un servicio web REST
Pantalla 28. Seleccionar clase Java de la BD Pantalla 29. Indicar el nombre del paquete
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 7 de 9
Si todo salió bien, debería generarse el
nuevo servicio web REST como se mues-
tra en la imagen.
Para probar el servicio web REST
habrá que dar clic derecho sobre el pro-
yecto y elegir la opción “Test RESTful
Web Services”, que previo a abrir el nave-
gador preguntará en dónde se generará el
Cliente para hacer el Test. Si se conserva
la segunda opción por default, se genera-
rán más archivos en el proyecto que servi-
rán para realizar las pruebas.
1.5. Pruebas de servicio web REST
Pantalla 33. Apertura de la página para hacer pruebas
Pantalla 34. Manipulación de datos por medio de la llave primaria de la tabla
Pantalla 31. Servicio web
REST recién creado Pantalla 30. Probar el servicio
web REST
Pantalla 32. Elección de la ubicación para hacer las pruebas, y compilación exitosa
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 8 de 9
Pantalla 35. Obtener información formateado con JSON
Pantalla 36. Agregar un nuevo registro a la base de datos en formato XML
Pantalla 37. Consulta de datos después de haber hecho un PUT para agregar un nuevo registro
Por: Héctor Garduño Real
Máster en Dirección e Ingeniería de Sitios Web
Servicios Web y Arquitecturas REST
01 de febrero de 2015 Página 9 de 9
Pantalla 38. Consulta de registros usando la URL para pasar parametros (http://localhost:8080/TitulacionAlum-
nos/websources/datos.titulacion/1)

Más contenido relacionado

Destacado

SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
edmodi
 
Business Plan Powerpoint 1
Business Plan Powerpoint 1Business Plan Powerpoint 1
Business Plan Powerpoint 1
haleydawn
 

Destacado (11)

Introduction to the Emerging JSON-Based Identity and Security Protocols
Introduction to the Emerging JSON-Based Identity and Security ProtocolsIntroduction to the Emerging JSON-Based Identity and Security Protocols
Introduction to the Emerging JSON-Based Identity and Security Protocols
 
Introduccion a los Servicios Web Rest
Introduccion a los Servicios Web RestIntroduccion a los Servicios Web Rest
Introduccion a los Servicios Web Rest
 
Asignatura: Informática 1
Asignatura: Informática 1Asignatura: Informática 1
Asignatura: Informática 1
 
Inmobiliario java
Inmobiliario javaInmobiliario java
Inmobiliario java
 
SOAP
SOAPSOAP
SOAP
 
SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
 
Introducción a Angular
Introducción a AngularIntroducción a Angular
Introducción a Angular
 
Crear y Eliminar Bases de datos en MySQL Workbench
Crear y Eliminar  Bases de datos en MySQL WorkbenchCrear y Eliminar  Bases de datos en MySQL Workbench
Crear y Eliminar Bases de datos en MySQL Workbench
 
Nota de Evolución o Nota SOAP
Nota de Evolución o Nota SOAPNota de Evolución o Nota SOAP
Nota de Evolución o Nota SOAP
 
Web services
Web servicesWeb services
Web services
 
Business Plan Powerpoint 1
Business Plan Powerpoint 1Business Plan Powerpoint 1
Business Plan Powerpoint 1
 

Más de Héctor Garduño Real

Más de Héctor Garduño Real (20)

Sistema para la Evaluación del Aprendizaje en entornos B-Learning
Sistema para la Evaluación del Aprendizaje en entornos B-LearningSistema para la Evaluación del Aprendizaje en entornos B-Learning
Sistema para la Evaluación del Aprendizaje en entornos B-Learning
 
Tesis - Fábrica de software Estado de México 2009
Tesis - Fábrica de software Estado de México 2009Tesis - Fábrica de software Estado de México 2009
Tesis - Fábrica de software Estado de México 2009
 
Asignatura: Interconectividad de Redes
Asignatura: Interconectividad de Redes Asignatura: Interconectividad de Redes
Asignatura: Interconectividad de Redes
 
Asignatura: Fundamentos de Redes de Computadoras
Asignatura: Fundamentos de Redes de ComputadorasAsignatura: Fundamentos de Redes de Computadoras
Asignatura: Fundamentos de Redes de Computadoras
 
Asignatura: Desarrollo Sustentable
Asignatura: Desarrollo SustentableAsignatura: Desarrollo Sustentable
Asignatura: Desarrollo Sustentable
 
Asignatura: Introducción a las ciencias de la computación
Asignatura: Introducción a las ciencias de la computaciónAsignatura: Introducción a las ciencias de la computación
Asignatura: Introducción a las ciencias de la computación
 
Principales CMS y Estadísticas de uso
Principales CMS y Estadísticas de usoPrincipales CMS y Estadísticas de uso
Principales CMS y Estadísticas de uso
 
Práctica de instalación y uso de Joomla
Práctica de instalación y uso de JoomlaPráctica de instalación y uso de Joomla
Práctica de instalación y uso de Joomla
 
Práctica de Creación de Máquina Virtual con LAMP en Amazon Web Services
Práctica de Creación de Máquina Virtual con LAMP en Amazon Web ServicesPráctica de Creación de Máquina Virtual con LAMP en Amazon Web Services
Práctica de Creación de Máquina Virtual con LAMP en Amazon Web Services
 
Práctica con WebGoat: HTTP Splitting, DoS, Ma-licious Execution e Injection F...
Práctica con WebGoat: HTTP Splitting, DoS, Ma-licious Execution e Injection F...Práctica con WebGoat: HTTP Splitting, DoS, Ma-licious Execution e Injection F...
Práctica con WebGoat: HTTP Splitting, DoS, Ma-licious Execution e Injection F...
 
Metodologías de Desarrollo de Aplicaciones Web Seguras
Metodologías de Desarrollo de Aplicaciones Web SegurasMetodologías de Desarrollo de Aplicaciones Web Seguras
Metodologías de Desarrollo de Aplicaciones Web Seguras
 
Análisis de lecturas sobre el Internet de las Cosas
Análisis de lecturas sobre el Internet de las CosasAnálisis de lecturas sobre el Internet de las Cosas
Análisis de lecturas sobre el Internet de las Cosas
 
Caso de éxito de IoT: Agricultura inteligente en Viñedos 2.0
Caso de éxito de IoT: Agricultura inteligente en Viñedos 2.0Caso de éxito de IoT: Agricultura inteligente en Viñedos 2.0
Caso de éxito de IoT: Agricultura inteligente en Viñedos 2.0
 
Análisis del Whitepaper DB4O
Análisis del Whitepaper DB4OAnálisis del Whitepaper DB4O
Análisis del Whitepaper DB4O
 
Práctica de instalación y uso de Alfresco
Práctica de instalación y uso de AlfrescoPráctica de instalación y uso de Alfresco
Práctica de instalación y uso de Alfresco
 
Práctica de Bases de Datos con MySQL (diseño, desarrollo y uso)
Práctica de Bases de Datos con MySQL (diseño, desarrollo y uso)Práctica de Bases de Datos con MySQL (diseño, desarrollo y uso)
Práctica de Bases de Datos con MySQL (diseño, desarrollo y uso)
 
Más alla de la web 2.0
Más alla de la web 2.0Más alla de la web 2.0
Más alla de la web 2.0
 
Práctica de herramientas web 2.0
Práctica de herramientas web 2.0Práctica de herramientas web 2.0
Práctica de herramientas web 2.0
 
Práctica en Joomla de reproductor de streaming de video y audio
Práctica en Joomla de reproductor de streaming de video y audioPráctica en Joomla de reproductor de streaming de video y audio
Práctica en Joomla de reproductor de streaming de video y audio
 
Informe de lectura de: Resumen del PMBOK v4 Dirección y Gestión de Proyectos
Informe de lectura de: Resumen del PMBOK v4 Dirección y Gestión de ProyectosInforme de lectura de: Resumen del PMBOK v4 Dirección y Gestión de Proyectos
Informe de lectura de: Resumen del PMBOK v4 Dirección y Gestión de Proyectos
 

Último

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (11)

Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
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
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 

Manual de creación y uso de un Web Service REST hecho en JSP (Java + GlasFish + Apache Derby)

  • 1. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 1 de 9 Manual de creación y uso de un Web Service REST REQUERIMIENTOS PREVIOS Se requiere instalar el IDE NetBeans 8.0.2, para lo cual se debe ir al sitio web https://netbeans.org/ y descargar el paquete “Java EE” o el paquete “All”, ya que son los que incluyen el servidor web de aplicaciones GlassFish, JEE (para usar jsp), y HTML, todos ellos necesarios el uso de webservices. De no contar con JDK (Java Development Kit), debe ser instalado previo a la instalación de NetBeans, ya que es el que provee las he- rramientas de desarrollo para éste IDE. JDK se puede descargar desde www.oracle.com donde también hay disponible una versión de NetBeans que incluye JDK. 1. CREACIÓN DE UN SERVICIO WEB 1.1. Creación del nuevo proyecto Una vez abierto NetBeans se debe crear un nuevo proyecto el cual contendrá el sitio web de la aplicación y el servicio web. Para ello se debe dirigir al menú superior y dar clic en “File”, posteriormente dar clic en “New Project…” lo cual abrirá un cua- dro de diálogo. Ya que lo que se pretende es realizar un servicio web, al crear el proyecto, en el primer paso (Elección del proyecto) se debe elegir la categoría “Java Web” y del lado derecho, en tipos de proyectos seleccionar “Web Application”. Una vez hecho esto es necesario dar clic en el botón [Next] para continuar con el proceso. Este manual será guiado usando como ejemplo un muy pequeño sistema que manipule datos de alumnos titula- dos. Así pues, para el segundo paso de la creación del proyecto, se deben escribir el nombre que se le desig- nará al proyecto, en este caso será “TitulacionAlum- nos”. Opcionalmente se puede definir otra ubicación Pantalla 2. Creación de un nuevo proyecto Pantalla 3. Elección de tipo de proyecto a crear Pantalla 1. Inicialización de NetBeans
  • 2. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 2 de 9 para guardar el proyecto usando el botón [Browse…], te- niendo en cuenta el cambio de ruta no afectará al proyecto. Así mismo, al crear el servicio web se producirán depen- dencias de librerías, y en caso de que se desee ubicarlas en una carpeta en específico habrá que activar e indicar la ubi- cación para almacenarlas. Una vez definidos los parámetros deberá darse clic en el botón [Next >]. El tercer paso se debe definir el servidor sobre el que se ejecutará el servicio web así como la versión de Java EE que se desee usar para el desarrollo. Si se emplea la úl- tima versión de NetBeans se pueden emplear los valores por defecto, es decir, servidor web “GlasFish Server 4.1” y la plataforma “Java EE 7 Web” y dar clic en el botón [Next >]. En el cuarto y último paso se debe indicar si se desea emplear un framework para el desarrollo del pro- yecto, pero ya que este manual aborda un ejemplo básico, no es necesario hacer la selección de ninguno de ellos, con lo cual se puede dar clic en el botón [Finish] para que co- mience la generación del proyecto, es decir, la estructura de carpetas y archivos esenciales necesarios del proyecto. Una vez finalizada la creación del proyecto, deberá apare- cer el proyecto recién creado en el panel izquierdo dentro de la pestaña “Projects”. 1.2. Preparar el entorno previo para usar REST El proyecto recién creado hará uso de REST, por lo que previamente habrá que simular un entorno similar a como lo ofrecería un servidor que provea el servicio web. Para ello será necesario inicializar los servidores de aplicaciones y de bases de datos, así como contar con una base de datos que contenga información que pueda ser manipulable. El primer paso será ir al panel “Services”, desplegar el elemento “Servers” y dar clic derecho sobre GlassFish para iniciarlo. Pantalla 4. Nombrar y establecer ubicación del proyecto Pantalla 5. Configuraciones y servidor Pantalla 7. Elección de frameworks Pantalla 6. Proyecto correctamente creado Pantalla 8. Iniciar GlassFish
  • 3. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 3 de 9 Si todo salió bien, en el panel Output de- berá aparecer la palabra “started” al final de los pasos. Posteriormente se procederá a hacer un paso similar pero ahora dando clic derecho sobre “Java DB” y luego en “Start Server”, el cual es el servidor de bases de datos incluido en NetBeans. Aunque es posible crear una completa base de datos propia, este ma- nual muestra la creación de una tabla en la base de datos de muestra de Apache Derby. Para ello es necesario dirigirse al panel “Services” y seguir la ruta Databases > jdbc.derby > APP para posteriormente dar clic de- recho sobre “Tables” y seleccionar la opción “Create Table…”. El cuadro de diálogo recién abierto solicitará un nombre de tabla, así como agregar los campos que se deseen. Para este ejemplo se han usado los el nombre de tabla “titulación” y los campos id, cuenta, nombre, temaTesis y fechaTesis, tal como se mues- tra en la imagen. Si todo salió bien, en el panel de “Services” deberá aparecer la nueva tabla que fue nombrada como “TI- TULACIÓN”. A continuación se introducirán manualmente datos a la tabla re- cién creada con el fin de testearla más adelante. Para ello es necesario dar clic derecho sobre la tabla “TITULACIÓN” y desde el menú contextual que emerge elegir la opción “View data…”, lo cual desplegará en el área de trabajo la librería jdbc.derby para que puedan manipularse los datos tanto con instrucciones de comando como con un asistente. Pantalla 9. Correcta inicialización de GlassFish Pantalla 10. Iniciar Ser- vidor de BD Pantalla 11. Correcta inicialización del servidor Apache Derby Pantalla 12. Creación de una tabla en la BD Pantalla 14. Creación de la tabla de la BD Pantalla 13. Creación co- rrecta de la tabla
  • 4. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 4 de 9 Para hacerlo más simple se insertarán nuevos registros desde el asistente, así que será dar clic sobre el botón “Insert Record(s)” que se encuentra justo debajo de la pestaña “select * from….” Desde el cuadro de diálogo podrán ingresarse tantos registros como se desee simplemente dando clic sobre el botón sobre el botón [Add Row…] cada que quiera agregarse uno. Si la inserción de los datos fue correcta deberían mostrarse éstos dentro del panel de resultados de las consultas. Pantalla 18. Visualización de datos recién agregados a la tabla de la BD 1.3. Configurar el proyecto para usar REST Ya que el proyecto debe conectarse a una base de datos, requerirá de libre- rías para su correcto funcionamiento con Apache Derby. Así pues el si- guiente paso es modificar el proyecto para agregar las librerías correspon- dientes, para ello hay que dar cli derecho sobre el proyecto y seleccionar la última de las opciones llamada “Properties”, lo cual abrirá una ventana en donde se ha de ubicar en el apartado “Libra- ries”, después dar clic sobre el botón [Add JAR/Folder]. Pantalla 15. Abrir panel de visualización de datos Pantalla 16. Botón para insertar nuevos registros Pantalla 17. Agregar registros a la tabla Pantalla 19. Editar propie- dades del proyecto Pantalla 20. Propiedades del proyecto
  • 5. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 5 de 9 Es necesario agregar las librerías “derby.jar” y “derbyclient.jar”, ambas ubicadas en la ruta de instalación de GlassFish y que comúnmente es C:Program FilesGlassFish-4.1jabadblib. Con- firmar que se hayan agregado dichas librerías en la ventana de propiedades del proyecto, si es así, entonces se pueden guardar los cambios Una vez hecho esto se procederá a realizar una clase Java que permita manipular la base de datos de forma autónoma. Este paso lo que hará es que dentro de la clase pondrá tantos atributos como campos tenga la tabla que se creó anteriormente. Para ello hará falta dar clic derecho sobre el proyecto, situarse sobre “New” y dar clic en “Entity Classes from Dara- base…” Se abrirá una ventana donde deberá elegirse la base de datos, y posteriormente seleccionar la tabla, usando el botón [Add >], para que pase a la columna de tablas seleccionadas. En el siguiente paso de esta ventana solo hará falta indicar el nombre del paquete donde se almacena- rán todas las dependencias. Para este ejemplo se usó el nombre “datos”. Pantalla 21. Agregar librerías de Bases de Datos al proyecto Pantalla 22. Crear una clase Java a partir de la BD Pantalla 23. Seleccionar tablas de la BD Pantalla 24. Configurar las clases y paquetes
  • 6. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 6 de 9 El siguiente paso de esta ventana no se realizan mo- dificaciones en las opciones de mapeo a la base de datos. Una vez que finalice el proceso, se podrá observar en el panel del proyecto, dentro de “Source Package” tanto el paquete “da- tos” que fue recién creado y contiene la clase generada para manipular la base de datos, así como el paquete “service” que también fue recién creado y contiene las diferentes vistas para que se comunique el servicio web . Pantalla 26. Archivos recién creados incluida la clase Java para manipular la BD 1.4. Crear el servicio web RESTFul Llegando a este punto, la creación del nuevo servicio web usando REST es muy fácil. El primer paso dar clic derecho sobre el proyecto para agregar un “RESTful Web Services from Entity Classes…”, es decir una manera de crear el servicio web basándose en los parámetros que aparecen en la clase Java que se creó con anterioridad. Solo hará falta indicar la clase que será usada y el nombre del paquete de las librerías. Pantalla 25. Concluir creación de clase de BD. Pantalla 27. Crear un servicio web REST Pantalla 28. Seleccionar clase Java de la BD Pantalla 29. Indicar el nombre del paquete
  • 7. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 7 de 9 Si todo salió bien, debería generarse el nuevo servicio web REST como se mues- tra en la imagen. Para probar el servicio web REST habrá que dar clic derecho sobre el pro- yecto y elegir la opción “Test RESTful Web Services”, que previo a abrir el nave- gador preguntará en dónde se generará el Cliente para hacer el Test. Si se conserva la segunda opción por default, se genera- rán más archivos en el proyecto que servi- rán para realizar las pruebas. 1.5. Pruebas de servicio web REST Pantalla 33. Apertura de la página para hacer pruebas Pantalla 34. Manipulación de datos por medio de la llave primaria de la tabla Pantalla 31. Servicio web REST recién creado Pantalla 30. Probar el servicio web REST Pantalla 32. Elección de la ubicación para hacer las pruebas, y compilación exitosa
  • 8. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 8 de 9 Pantalla 35. Obtener información formateado con JSON Pantalla 36. Agregar un nuevo registro a la base de datos en formato XML Pantalla 37. Consulta de datos después de haber hecho un PUT para agregar un nuevo registro
  • 9. Por: Héctor Garduño Real Máster en Dirección e Ingeniería de Sitios Web Servicios Web y Arquitecturas REST 01 de febrero de 2015 Página 9 de 9 Pantalla 38. Consulta de registros usando la URL para pasar parametros (http://localhost:8080/TitulacionAlum- nos/websources/datos.titulacion/1)