SlideShare una empresa de Scribd logo
1 de 34
Desarrollo de
Software 2
Tema: 4 Web Services
Mg. Luis Fernando Aguas Bucheli
+593 984015184
@Aguaszoft
Laguas@uisrael.edu.ec
Deséalo, espéralo, suéñalo, pero por todos los medios…
¡Hazlo!
Objetivo
1. Adquirir los conceptos
básicos relacionados con la
programación web
2. Reconocer las
características de la
programación web
● 4.2 Servicios Web RestFul
Contenido
Objetivos de Desarrollo Sostenible
4.7 De aquí a 2030, asegurar que todos los alumnos adquieran
los conocimientos teóricos y prácticos necesarios para
promover el desarrollo sostenible, entre otras cosas mediante la
educación para el desarrollo sostenible y los estilos de vida
sostenibles, los derechos humanos, la igualdad de género, la
promoción de una cultura de paz y no violencia, la ciudadanía
mundial y la valoración de la diversidad cultural y la
contribución de la cultura al desarrollo sostenible
4.2. Servicios Web RestFul
Jakarta EE (Java EE) on PaaS
1. Google Engine
2. AWS Elastic BeanStalk
3. OpenShift
4. Cloud Fundry
5. Heroku
6. Oracle Cloud
7. Microsoft Azure
Nuevo Proyecto
Paso 1 crear nuevo proyecto
Paso 2 Maven & web Application
Nombre proyecto y servidor
Paso 3: Nombre del proyecto
Paso 4: Selección del servidor
Agregar nueva clase Java al Proyecto
Nueva Clase de configuración
Crear un clase java la cual contendrá la configuracón. Esta clase será el punto
de entrada al servicio.
Clase creada
Clase de configuración
Crear un clase java la cual contendrá la configuracón. Esta clase será el punto de
entrada al servicio.
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("/api")
public class AppConfig extends Application {
}
Ejemplo path acceso:
http://myservidor.cl/miproyecto/api/sumarecurso
Código clase de Configuración:
Crear nueva clase java
Clase de Recurso
import javax.ws.rs.Path;
@Path("/")
public class SumaRecurso {
// Metodos para responder las solicitudes
}
Crear un clase Java:
Código clase de Configuración:
Suma: QueryParam
Creación de los recursos que estarán disponibles mediante los verbos
http.
Crear un servicio REST
Resultado esperado:
git y el administrador de código Bitbucket
Crear cuenta en : https://bitbucket.org/
git y el administrador de código Bitbucket
Crear cuenta en : https://bitbucket.org/
Inicio Rapido Git
Repositorio Local a Remoto
Paso 1: Moverse al directorio del repositorio local
cd /ruta/del/repositorio/local
Paso 2: Conectar el repositorio local existente a Bitbucket (repositorio remoto)
git remote add origin https://mi-user-git@bitbuckut.org:usuario-remoto/repositorio-remoto.git
git push origin master
git config --global user.mail mimail@ejemplo.com
git config –- global. user.name MiNombre
Como supuesto se descargó e instaló git: https://git-scm.com/
Comandos git:
Inicio Rápido git
Inicializa el repositorio git init .
Seguimiento de los ficheros serán parte del commit git git add .
Confirma los cambios realizados git commit –m “detalle del commit”
Cambiar de rama git checkout nombre_rama
Bajar cambios al local git pull nombre_rama
Subir los cambios al repositorio remoto git push origin nombre_rama
Eliminar una referencia remota git remote rm origin
Configuración del proyecto para
el deploy de la API en el Cloud
Configuración del POM con el Plugin Payara-mircro-maven
<plugin>
<groupId>fish.payara.maven.plugins</groupId>
<artifactId>payara-micro-maven-plugin</artifactId>
<version>1.0.1</version>
</plugin>
Paso 1: Buscar el Plugin en Maven:
https://mvnrepository.com/artifact/fish.payara.maven.plugins/payara-micro-maven-plugin/1.0.1
Paso 2: Agregar Pluging al POM del proyecto
Nota: Para Ejecutar el proyecto con el Pluging con Maven:
mvn install payara-micro:bundle
Crear fichero Procfile
Es el encargado de indicarle a Heroku como ejecutar la App
desplegada.
Crear fichero Procfile
Crear fichero Procfile
Contenido Procfile: web: java –jar target/*.jar –-port $PORT
Creación y despliegue la App en Heroku desde la terminal
Dando formato del proyecto antes del despliegue en heroku,
para ello se usa GIT.
Paso 1: Se inicializa el repositorio local.
git init .
git add .
git commit –m “primer commit”
Creación y despliegue la App en Heroku desde la terminal
Paso 2: Se crea la App en Heroku.
heroku create nombre_mi_app_en_heroku
Desde la terminal CLI:
heroku config:set MAVEN_CUSTOM_GOALS=“install payara-
micro:bundle”
o Datos de la variable
Nombre variable: MAVEN_CUSTOM_GOALS
Valor variable : install payara-micro:bundle
 Para desplegar en Heroku con Payara Micro usando el Pluging de Maven se debe crear una variable
de entorno (MAVEN_CUSTOM_GOALS).
 Grafica desde la web de Heroku.
 Terminal usando el CLI.
Creación y despliegue la App en Heroku desde la terminal
Paso 3: Se realiza el deploy (despliegue) a heroku.
git push heroku master
Nota:
para abrir la App desplegada en Heroku desde la terminal: heroku open
Nuevas Funcionalidades
del API
Suma: JSON
Suma: consulta resvicio con Postman
Recurso con restricción
Mediante el uso de expresiones regulares es posible restringir el acceso a un recurso.
Resultado esperado
Gracias
Responsabilidad con pensamiento positivo

Más contenido relacionado

La actualidad más candente

Curso de Struts 2: Unidad Didáctica 01 El Entorno de Desarrollo
Curso de Struts 2: Unidad Didáctica 01 El Entorno de DesarrolloCurso de Struts 2: Unidad Didáctica 01 El Entorno de Desarrollo
Curso de Struts 2: Unidad Didáctica 01 El Entorno de DesarrolloDavid Vaquero
 
Definición y función de lenguaje java script
Definición y  función de lenguaje java scriptDefinición y  función de lenguaje java script
Definición y función de lenguaje java scriptAndres Rodriguez
 
Conexion mysql con java usando netbeans
Conexion mysql con java usando netbeansConexion mysql con java usando netbeans
Conexion mysql con java usando netbeansEmerson Garay
 
2.1. arena-y-binding
2.1. arena-y-binding2.1. arena-y-binding
2.1. arena-y-bindingxavazque2
 
BlueJ
BlueJBlueJ
BlueJda4
 
Herramientas para Desarrolladores Web
Herramientas para Desarrolladores WebHerramientas para Desarrolladores Web
Herramientas para Desarrolladores Websergiovier
 
Vue.js: El framework javascript para muggles
Vue.js: El framework javascript para mugglesVue.js: El framework javascript para muggles
Vue.js: El framework javascript para mugglesJuan Rodríguez
 

La actualidad más candente (20)

Curso de Struts 2: Unidad Didáctica 01 El Entorno de Desarrollo
Curso de Struts 2: Unidad Didáctica 01 El Entorno de DesarrolloCurso de Struts 2: Unidad Didáctica 01 El Entorno de Desarrollo
Curso de Struts 2: Unidad Didáctica 01 El Entorno de Desarrollo
 
Semana 1 Patrones de Diseño
Semana 1   Patrones de DiseñoSemana 1   Patrones de Diseño
Semana 1 Patrones de Diseño
 
Definición y función de lenguaje java script
Definición y  función de lenguaje java scriptDefinición y  función de lenguaje java script
Definición y función de lenguaje java script
 
Conexion mysql con java usando netbeans
Conexion mysql con java usando netbeansConexion mysql con java usando netbeans
Conexion mysql con java usando netbeans
 
Herramientas Digitales
Herramientas DigitalesHerramientas Digitales
Herramientas Digitales
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
2.1. arena-y-binding
2.1. arena-y-binding2.1. arena-y-binding
2.1. arena-y-binding
 
Lab-01-PD2-HTML
Lab-01-PD2-HTMLLab-01-PD2-HTML
Lab-01-PD2-HTML
 
Maven
MavenMaven
Maven
 
Semana 2 Generación del proyecto usando Spring
Semana 2   Generación del proyecto usando SpringSemana 2   Generación del proyecto usando Spring
Semana 2 Generación del proyecto usando Spring
 
Desarrollo de Aplicaciones Web 2.0 con GWT
Desarrollo de Aplicaciones Web 2.0 con GWTDesarrollo de Aplicaciones Web 2.0 con GWT
Desarrollo de Aplicaciones Web 2.0 con GWT
 
Desarrollo de aplicaciones web con Google Web Toolkit
Desarrollo de aplicaciones web con Google Web ToolkitDesarrollo de aplicaciones web con Google Web Toolkit
Desarrollo de aplicaciones web con Google Web Toolkit
 
Análisis del Whitepaper DB4O
Análisis del Whitepaper DB4OAnálisis del Whitepaper DB4O
Análisis del Whitepaper DB4O
 
Comenzando con GWT
Comenzando con GWTComenzando con GWT
Comenzando con GWT
 
Jquery
JqueryJquery
Jquery
 
BlueJ
BlueJBlueJ
BlueJ
 
Herramientas para Desarrolladores Web
Herramientas para Desarrolladores WebHerramientas para Desarrolladores Web
Herramientas para Desarrolladores Web
 
Semana 1 Microservicios
Semana 1   MicroserviciosSemana 1   Microservicios
Semana 1 Microservicios
 
Dreamweaver
DreamweaverDreamweaver
Dreamweaver
 
Vue.js: El framework javascript para muggles
Vue.js: El framework javascript para mugglesVue.js: El framework javascript para muggles
Vue.js: El framework javascript para muggles
 

Similar a S8 ds2 (20)

S8-DS2.pptx
S8-DS2.pptxS8-DS2.pptx
S8-DS2.pptx
 
Atix30
Atix30Atix30
Atix30
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7
 
Framework
FrameworkFramework
Framework
 
Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014Firefox OS App Days USACH 2014
Firefox OS App Days USACH 2014
 
Zeety open project manual de instalación
Zeety   open project manual de instalaciónZeety   open project manual de instalación
Zeety open project manual de instalación
 
Fundamentos de python con orientación a objetos y basado en problemas con bas...
Fundamentos de python con orientación a objetos y basado en problemas con bas...Fundamentos de python con orientación a objetos y basado en problemas con bas...
Fundamentos de python con orientación a objetos y basado en problemas con bas...
 
Atix24
Atix24Atix24
Atix24
 
Atix24
Atix24Atix24
Atix24
 
Scraping the web with python
Scraping the web with pythonScraping the web with python
Scraping the web with python
 
Tarea 6 de ruth
Tarea 6 de ruthTarea 6 de ruth
Tarea 6 de ruth
 
Proyecto final tic 2015
Proyecto final tic 2015Proyecto final tic 2015
Proyecto final tic 2015
 
Internet
InternetInternet
Internet
 
Apps Days Firefox OS
Apps Days Firefox OSApps Days Firefox OS
Apps Days Firefox OS
 
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
 
Portafolio
PortafolioPortafolio
Portafolio
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Android Pres3
Android Pres3Android Pres3
Android Pres3
 
Proyecto GuadalGeek del Centro Guadalinfo de Sierra de Yeguas
Proyecto GuadalGeek del Centro Guadalinfo de Sierra de YeguasProyecto GuadalGeek del Centro Guadalinfo de Sierra de Yeguas
Proyecto GuadalGeek del Centro Guadalinfo de Sierra de Yeguas
 
Recursos para un Centro TIC
Recursos para un Centro TICRecursos para un Centro TIC
Recursos para un Centro TIC
 

Más de Luis Fernando Aguas Bucheli (20)

EFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptxEFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptx
 
P-S2.pptx
P-S2.pptxP-S2.pptx
P-S2.pptx
 
EBTS-S1.pptx
EBTS-S1.pptxEBTS-S1.pptx
EBTS-S1.pptx
 
P-S3.pptx
P-S3.pptxP-S3.pptx
P-S3.pptx
 
EBTS-S4.pptx
EBTS-S4.pptxEBTS-S4.pptx
EBTS-S4.pptx
 
P-S4.pptx
P-S4.pptxP-S4.pptx
P-S4.pptx
 
P-S1.pptx
P-S1.pptxP-S1.pptx
P-S1.pptx
 
EBTS-S3.pptx
EBTS-S3.pptxEBTS-S3.pptx
EBTS-S3.pptx
 
EBTS-S2.pptx
EBTS-S2.pptxEBTS-S2.pptx
EBTS-S2.pptx
 
PDIDTI-S7.pptx
PDIDTI-S7.pptxPDIDTI-S7.pptx
PDIDTI-S7.pptx
 
PDIDTI-S4.pptx
PDIDTI-S4.pptxPDIDTI-S4.pptx
PDIDTI-S4.pptx
 
PDIDTI-S2.pptx
PDIDTI-S2.pptxPDIDTI-S2.pptx
PDIDTI-S2.pptx
 
PDIDTI-S1.pptx
PDIDTI-S1.pptxPDIDTI-S1.pptx
PDIDTI-S1.pptx
 
PDIDTI-S8.pptx
PDIDTI-S8.pptxPDIDTI-S8.pptx
PDIDTI-S8.pptx
 
PDIDTI-S6.pptx
PDIDTI-S6.pptxPDIDTI-S6.pptx
PDIDTI-S6.pptx
 
PDIDTI-S5.pptx
PDIDTI-S5.pptxPDIDTI-S5.pptx
PDIDTI-S5.pptx
 
PDIDTI-S3.pptx
PDIDTI-S3.pptxPDIDTI-S3.pptx
PDIDTI-S3.pptx
 
TIC-S4.pptx
TIC-S4.pptxTIC-S4.pptx
TIC-S4.pptx
 
TIC-S3.pptx
TIC-S3.pptxTIC-S3.pptx
TIC-S3.pptx
 
TIC-S2.pptx
TIC-S2.pptxTIC-S2.pptx
TIC-S2.pptx
 

Último

Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingKevinCabrera96
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxbingoscarlet
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILProblemSolved
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolicalf1231
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxChristopherOlave2
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 

Último (20)

Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptx
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 

S8 ds2

  • 1. Desarrollo de Software 2 Tema: 4 Web Services Mg. Luis Fernando Aguas Bucheli +593 984015184 @Aguaszoft Laguas@uisrael.edu.ec
  • 2. Deséalo, espéralo, suéñalo, pero por todos los medios… ¡Hazlo!
  • 3. Objetivo 1. Adquirir los conceptos básicos relacionados con la programación web 2. Reconocer las características de la programación web ● 4.2 Servicios Web RestFul Contenido
  • 4. Objetivos de Desarrollo Sostenible 4.7 De aquí a 2030, asegurar que todos los alumnos adquieran los conocimientos teóricos y prácticos necesarios para promover el desarrollo sostenible, entre otras cosas mediante la educación para el desarrollo sostenible y los estilos de vida sostenibles, los derechos humanos, la igualdad de género, la promoción de una cultura de paz y no violencia, la ciudadanía mundial y la valoración de la diversidad cultural y la contribución de la cultura al desarrollo sostenible
  • 6. Jakarta EE (Java EE) on PaaS 1. Google Engine 2. AWS Elastic BeanStalk 3. OpenShift 4. Cloud Fundry 5. Heroku 6. Oracle Cloud 7. Microsoft Azure
  • 7. Nuevo Proyecto Paso 1 crear nuevo proyecto Paso 2 Maven & web Application
  • 8. Nombre proyecto y servidor Paso 3: Nombre del proyecto Paso 4: Selección del servidor
  • 9. Agregar nueva clase Java al Proyecto
  • 10. Nueva Clase de configuración Crear un clase java la cual contendrá la configuracón. Esta clase será el punto de entrada al servicio.
  • 12. Clase de configuración Crear un clase java la cual contendrá la configuracón. Esta clase será el punto de entrada al servicio. import javax.ws.rs.ApplicationPath; import javax.ws.rs.core.Application; @ApplicationPath("/api") public class AppConfig extends Application { } Ejemplo path acceso: http://myservidor.cl/miproyecto/api/sumarecurso Código clase de Configuración:
  • 14. Clase de Recurso import javax.ws.rs.Path; @Path("/") public class SumaRecurso { // Metodos para responder las solicitudes } Crear un clase Java: Código clase de Configuración:
  • 15. Suma: QueryParam Creación de los recursos que estarán disponibles mediante los verbos http.
  • 16. Crear un servicio REST Resultado esperado:
  • 17. git y el administrador de código Bitbucket Crear cuenta en : https://bitbucket.org/
  • 18. git y el administrador de código Bitbucket Crear cuenta en : https://bitbucket.org/
  • 19. Inicio Rapido Git Repositorio Local a Remoto Paso 1: Moverse al directorio del repositorio local cd /ruta/del/repositorio/local Paso 2: Conectar el repositorio local existente a Bitbucket (repositorio remoto) git remote add origin https://mi-user-git@bitbuckut.org:usuario-remoto/repositorio-remoto.git git push origin master git config --global user.mail mimail@ejemplo.com git config –- global. user.name MiNombre Como supuesto se descargó e instaló git: https://git-scm.com/
  • 20. Comandos git: Inicio Rápido git Inicializa el repositorio git init . Seguimiento de los ficheros serán parte del commit git git add . Confirma los cambios realizados git commit –m “detalle del commit” Cambiar de rama git checkout nombre_rama Bajar cambios al local git pull nombre_rama Subir los cambios al repositorio remoto git push origin nombre_rama Eliminar una referencia remota git remote rm origin
  • 21. Configuración del proyecto para el deploy de la API en el Cloud
  • 22. Configuración del POM con el Plugin Payara-mircro-maven <plugin> <groupId>fish.payara.maven.plugins</groupId> <artifactId>payara-micro-maven-plugin</artifactId> <version>1.0.1</version> </plugin> Paso 1: Buscar el Plugin en Maven: https://mvnrepository.com/artifact/fish.payara.maven.plugins/payara-micro-maven-plugin/1.0.1 Paso 2: Agregar Pluging al POM del proyecto Nota: Para Ejecutar el proyecto con el Pluging con Maven: mvn install payara-micro:bundle
  • 23. Crear fichero Procfile Es el encargado de indicarle a Heroku como ejecutar la App desplegada.
  • 25. Crear fichero Procfile Contenido Procfile: web: java –jar target/*.jar –-port $PORT
  • 26. Creación y despliegue la App en Heroku desde la terminal Dando formato del proyecto antes del despliegue en heroku, para ello se usa GIT. Paso 1: Se inicializa el repositorio local. git init . git add . git commit –m “primer commit”
  • 27. Creación y despliegue la App en Heroku desde la terminal Paso 2: Se crea la App en Heroku. heroku create nombre_mi_app_en_heroku Desde la terminal CLI: heroku config:set MAVEN_CUSTOM_GOALS=“install payara- micro:bundle” o Datos de la variable Nombre variable: MAVEN_CUSTOM_GOALS Valor variable : install payara-micro:bundle  Para desplegar en Heroku con Payara Micro usando el Pluging de Maven se debe crear una variable de entorno (MAVEN_CUSTOM_GOALS).  Grafica desde la web de Heroku.  Terminal usando el CLI.
  • 28. Creación y despliegue la App en Heroku desde la terminal Paso 3: Se realiza el deploy (despliegue) a heroku. git push heroku master Nota: para abrir la App desplegada en Heroku desde la terminal: heroku open
  • 31. Suma: consulta resvicio con Postman
  • 32. Recurso con restricción Mediante el uso de expresiones regulares es posible restringir el acceso a un recurso.