Taller de Sistemas de Información 2
|
|
- Pilar Ortíz Ramos
- hace 8 años
- Vistas:
Transcripción
1 Taller de Sistemas de Información 2 Web Services 11 de Setiembre de 2012 Instituto de Computación Facultad de Ingeniería Universidad de la República de Uruguay
2 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 2
3 Que es un web service? Es un servicio o funcionalidad Se encuentra disponible a través de Internet o una Intranet Usando una forma estandarizada de mensajería (generalmente XML) No se encuentra atado a ningún sistema operativo ni ningún lenguaje de programación Se puede auto describir (generalmente vía XML) Puede ser descubierto a través de un mecanismo de búsqueda Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 3
4 Tendencias Hoy día tenemos dos grandes tendencias en el desarrollo de web services Web services que estandarizan su información a través de mensajes XML, en formato SOAP. Estos se denominan servicios SOAP Web services que no estandarizan su información, denominados servicios REST Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 4
5 Web Services SOAP Este tipo de servicios, implica el intercambio de mensajes XML, codificados según el protocolo SOAP Estos mensajes tienen la forma: Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 5
6 Web Services SOAP Estos mensajes en formato SOAP son movidos de un sistema a otro, utilizando HTTP El sistema recibe el mensaje, hace lo que tiene que hacer, y devuelve una respuesta también en formato SOAP Es un sistema simple, que no tiene en cuenta aspectos importantes del desarrollo de soluciones empresariales, pero que son tenidas en cuenta a través de extensiones a los estándares Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 6
7 Especificaciones Los servicios web utilizan diferentes especificaciones para estandarizar su funcionamiento Estas se dividen en dos tipos Especificaciones básicas Especificaciones avanzadas, de las cuales algunas se destacan por su utilidad para la construcción de soluciones de integración Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 7
8 Especificaciones basicas Universal Description, Discovery and Integration (UDDI) Web Services Description Language (WSDL) Find Publish WSDL FTP, SMTP, etc. HTTP SOAP Simple Object Access Protocol (SOAP) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 8
9 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 9
10 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 10
11 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 11
12 Mensajes SOAP La estructura básica de un mensaje SOAP consiste de un elemento Envelope el cual contiene un elemento opcional Header un elemento requerido Body que puede incluir un elemento Fault El Envelope es el elemento raíz de todo mensaje SOAP e identifica un documento XML como un mensaje SOAP Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 12
13 Mensaje SOAP <?xml version="1.0"?> <soap:envelope xmlns:soap=" soap:encodingstyle=" <soap:header>... </soap:header> <soap:body>... </soap:body> </soap:envelope> <soap:fault>... </soap:fault> Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 13
14 Mensaje SOAP Body <soap:body> <t:translate xmlns:t=" <t:word>red</t:word> </t:translate> </soap:body> <soap:body> <t:translateresponse xmlns:t=" <t:translation>rojo</t:translation> </t:translateresponse> </soap:body> solicitud resultado Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 14
15 Transporte de mensajes SOAP no impone el uso de un determinado protocolo para el intercambio de mensajes A través del concepto de binding SOAP permite especificar: cómo los mensajes SOAP se encapsulan en un protocolo de transporte cómo los mensajes SOAP deben ser tratados con las primitivas del protocolo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 15
16 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 16
17 WSDL Web Services Description Language Lenguaje basado en XML que permite describir la interfaz y otras características de un Web Service Un documento WSDL puede dividirse en dos partes: descripción abstracta descripción concreta Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 17
18 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 18
19 Estandares avanzados Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 19
20 Profiles Basic Profile (BP) Guías para el desarrollo de WS interoperables utilizando las especificaciones centrales Basic Security Profile (BSP) Extiende el BP definiendo guías para el desarrollo de WS seguros Algunos ejemplos: Prohíbe el uso de SSL 2.0 Restringe cantidad de timestamps en header a 1 Prohíbe encriptar los elementos body, header y envelope Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 20
21 Plataformas para web services Las plataformas de Web Services son un conjunto de herramientas para un lenguaje de programación específico Permiten: invocar web services realizar el deploy de Web Services Las plataformas tienen en general componentes en el servidor y en el cliente Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 21
22 Plataformas para web services Los componentes en el servidor se alojan usualmente en algún tipo de contenedor servidor Java EE contenedor de servlets Los componentes en el cliente se empaquetan en general como herramientas para acceder a interfaces asociadas a WS Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 22
23 Plataformas para web services Las plataformas de Web Services proveen en general tres subsistemas: Invocación Serialización Deployment Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 23
24 Subsistema de invocación (servidor) Recibir SOAPs desde el transporte (HTTP, etc) Invocar manejadores para QoS (seguridad, etc) Determinar la operación que se quiere invocar Determinar la clase/método que se quiere invocar Enviar el SOAP al sistema de serialización Invocar la clase-método Enviar el resultado al sistema de serialización Crear y enviar el mensaje SOAP al transporte para el envío de la respuesta Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 24
25 Subsistema de invocación (cliente) Instanciar la clase que implementa la interfaz para acceder a WS y manejar su invocación Enviar parámetros al sistema de serialización Adjuntar los mismos en un mensaje SOAP Invocar manejadores para QoS Enviar el SOAP a través del trasporte (ej. HTTP) Recibir los SOAPs respuesta desde el transporte Enviar los SOAP al sistema de serialización y completar la invocación Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 25
26 Subsistema de invocación Subsistema de Invocación (cliente) Subsistema de Invocación (servidor) Param Request Request Param Param SOAP SOAP Param Objeto Param Param Función Return Respons e SOAP Respons e SOAP Return Invocación de Métodos Intercambio de Mensajes SOAP Invocación de Métodos Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 26
27 Subsistema de serialización Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 27
28 Subsistema de deployment Provee herramientas para configurar un componente de software para que pueda ser invocado como un WS vía mensajes SOAP Desplegar el componente de SW Mapeo operaciones WSDL componente SW Configuración serialización (esquema params) Publicación del WSDL Configurar aspectos avanzados (seguridad, etc.) Configurar el listener en una dirección de red Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 28
29 Algunas plataformas de WS Windows Communication Foundation Apache AXIS 2 Apache CXF Proyecto Metro JBoss Web Services Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 29
30 Implementacion de WS Implementación Bottom-up Se comienza por el código (por ejemplo, una clase Java) Code-First / Contract-Last Implementación Top-down Se comienza por el WSDL Code-Last / Contract-First Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 30
31 Bottom-Up Ventajas Forma rápida de exponer funcionalidades vía WS No requiere conocimiento de XMLSchema, WSDL Desventajas El esquema es embebido en el WSDL Los cambios en la interfaz son más difíciles de manejar En el WSDL hay dependencias con la implementación (paquetes y namespaces) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 31
32 Top-Down Ventajas Permite el desarrollo independiente y paralelo entre cliente y servicio Cuando se crean nuevos tipos, éstos pueden ser reutilizados por otros servicios No se generan dependencias con la implementación Desventajas Requiere conocimiento de XMLSchema y WSDL Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 32
33 Web Services en JavaEE 6 La plataforma JavaEE 6, incluye soporte para web services, utilizando el protocolo SOAP, a traves del API JAX-WS Java API for XML Web Services La implementacion de referencia se denomina Metro, es desarrollada por Oracle y viene incluida dentro del servidor de aplicaciones GlassFish Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 33
34 Web Services en JavaEE6 y JDK6 En el caso de Jboss, la implementacion de referencia viene incluida en el componente JBossWS, dentro del servidor de aplicaciones JBoss 6 A partir de la version 6 (update 4), la plataforma Java estandar (JDK), incluye las APIs para trabajar con JAX-WS y JAXB, fundamentales para el consumo de web services Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 34
35 Definiendo un web service Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 35
36 Definiendo un web service En el ejemplo anterior se intercambia un objeto CreditCard entre el consumidor y el proveedor del servicio Los datos intercambiados, deben ser un documento XML, por lo que se necesita un método para transformar el objeto Java en un documento XML y viceversa Para esto utilizamos JAXB, anotándolo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 36
37 Definiendo un web service Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 37
38 Invocando un web service Un ejemplo de posible cliente... Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 38
39 JAXB Si bien el intercambio de información entre el consumidor y proveedor se hace en base a XML, el codigo Java no tiene porque interactuar con esto directamente JAXB provee un estándar para trabajar con representaciones Java de documentos XML y viceversa Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 39
40 La clase CreditCard Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 40
41 El documento XML Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 41
42 El schema XML Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 42
43 Binding Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 43
44 Marshalling/Unmarshalling Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 44
45 Anotaciones JAXB es similar a JPA, salvo que la persistencia se realiza contra un documento XML, en vez de una tabla de la base de datos El mapping al documento puede ser customizado utilizando las anotaciones en el paquete javax.xml.bind.annotation El equivalente en JAXB, se Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 45
46 Anotaciones Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 46
47 El esquema asociado... Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 47
48 El documento obtenido Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 48
49 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 49
50 Web Services / Funcionamiento Si bien el programador Java no debe preocuparse del manejo de los protocolos de bajo nivel en web services, es conveniente conocer que esta sucediendo por detras... Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 50
51 JAX-WS Como la mayoría de los componentes Java EE, los web services utilizan el esquema de configuración por excepción Solo necesitamos una anotación para transformar un POJO en un web Como en el caso de los EJBs, hay una serie de requerimientos a la hora de escribir un servicio... Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 51
52 JAX-WS La clase debe estar anotada Si el web service es implementado con un EJB, entonces este solo puede ser stateless La clase debe ser publica, y no puede ser final ni abstract La clase debe tener un constructor por defecto La clase no debe definir el método finalize El servicio debe ser stateless Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 52
53 JAX-WS Basta con que un POJO cumpla con los requisitos anteriores, para que pueda ser desplegado en un servlet container Esto se conoce como servlet endpoint Análogamente, un Stateless EJB puede ser utilizado como clase de implementación del servicio Esto se conoce como EJB endpoint Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 53
54 @WebService Esta anotación marca una clase o interfaz como un web service Si se aplica directamente sobre la clase y no la interfaz, entonces el container generara la interfaz a partir de los métodos públicos Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 54
55 @WebMethod Por defecto, todos los métodos públicos del web service (o de su interfaz) son incluidos dentro de lo que se expone al exterior Para customizar la forma en como se hace esto (por ejemplo para cambiar el nombre del método), usamos la aplicada sobre el método a modificar Por ejemplo... Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 55
56 @WebMethod Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 56
57 @WebResult Opera en conjunto con la anotación anterior Permite customizar el nombre del mensaje devuelto como resultado de la operación Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 57
58 @WebParam Permite customizar los parámetros que son enviados al servicio Podemos cambiar el nombre y el tipo de parámetro (IN, OUT, INOUT) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 58
59 @OneWay Es una anotación que permite indicar que un método, no retorna valores Por ejemplo, los métodos que retornan void Esto permite que el container realice optimizaciones con los métodos de este tipo, por ejemplo, usando Asynchronous (solo en EJB) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 59
60 Ciclo de vida El ciclo de vida de los web services es similar al de los stateless session beans No mantienen ningún estado, simplemente existen o no existen Como en el caso de los stateless, podemos usar las En el caso de un web service implementado como EJB, se pueden utilizar interceptors Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 60
61 Ciclo de vida Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 61
62 Web Service Context Como en el caso de los EJBs, el web service tiene un contexto que permite obtener información útil del ambiente de ejecución del servicio Se inyecta como en el caso de los EJB, Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 62
63 Web Service Context GetMessageContext Permite acceder al mensaje SOAP, por ejemplo para obtener los headers GetUserPrincipal Identifica a traves del Principal al emisor del mensaje IsUserInRole Determina si un usuario autenticado esta presente en un rol determinado Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 63
64 Invocando un web service Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 64
65 Invocando un web service Usando herramientas que generen stubs y clases Java a partir del WSDL, podemos invocar un servicio web El JDK provee una herramienta, denominada wsimport que genera las clases necesarias para poder realizar la invocación a un determinado web service del que conocemos su wsdl Las interfaces generadas se denominan SEI (Service Endpoint Interfaces) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 65
66 Invocando un web service Las interfaces y artefactos generados, deben ser colocados en el proyecto que realizara el consumo del servicio web Una vez colocados los artefactos (.java) generados, podemos hacer la invocacion de esta forma: Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 66
67 Generando los artefactos Usamos la herramienta wsimport Por ejemplo, en el practico tenemos este ejemplo: wsimport -keep -d../src viceimpl/calculadoraserviceimpl?wsdl keep permite mantener el codigo fuente generado -d../src es la ruta donde se almacena dicho codigo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 67
68 @WebServiceRef Permite inyectar una referencia a un servicio web, indicando la localizacion del WSDL del servicio Por 080/app/CalculatorService?WSDL") private CalculatorService service; Solo puede ser utilizado en componentes managed (managed beans, ejbs, etc) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 68
69 REST La motivación para desarrollar REST fue la de crear un modelo arquitectónico de como tiene que funcionar la web, de forma que sirva de guía para los protocolos de la web REST ha sido usado para describir la arquitectura de la web, identificar problemas existentes, comparar soluciones alternativas, y asegurarse que las extensiones a los protocolos no violan las restricciones centrales que hace a la web exitosa Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 69
70 REST Representational State Transfer Es un estilo arquitectónico para la construcción de software REST fue desarrollado junto con el protocolo HTTP/1.1, el cual se adhiere a REST Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 70
71 Conceptos La arquitectura esta compuesta por clientes y servidores Requests y Responses Los Requests y Responses son construidos en base a la idea de transferir representaciones de recursos Los clientes contienen representaciones Los servidores contienen los recursos en si Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 71
72 Conceptos Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 72
73 Conceptos Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 73
74 ROA REST es un estilo arquitectónico Una arquitectura que se adhiere a este estilo, es ROA: Resource Oriented Architecture Existen otras que pueden (en parte) también adherirse a este estilo de trabajo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 74
75 Ejemplos de ROA Las URLs apuntan a recursos (sustantivos) Métodos universales para manejar los recursos GET, POST, PUT, DELETE No se maneja estado en el servidor Se hace uso de cache Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 75
76 Definimos REST en base a... Recursos y URIs Representaciones Interfaces uniformes HATEOAS Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 76
77 ... pero NO en base a... Schemas (XSD) Lenguajes de descripción Generación de código Registros Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 77
78 REST/HTTP: Recursos Algo, una cosa con identidad Una persona, un perfil de Facebook, un usuario en Twitter, una direccion, una imagen, un video en Youtube Los recursos se nombran con URIs Las URIs son estables (no cambian tan seguido) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 78
79 REST/HTTP: Recursos Podemos pensar que la URI es la PK del recurso Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 79
80 URI Generalmente son opacas Lo importante es que los clientes no tengan que parsearla y entenderla Sin embargo, son opacas para las aplicaciones cliente, pero no para los desarrolladores de clientes Una buena forma de organizar los recursos, es usar un enfoque jerárquico Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 80
81 Representaciones Son los elementos que se envían dentro de un request, y que se reciben en un response Por ejemplo: Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 81
82 Media Types (MIME Types) Son el equivalente a la clase de un objeto, o el schema de un documento XML Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 82
83 Negociacion Las representaciones son negociables Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 83
84 Negociacion La idea es no sobrecargar las URIs Le decimos a los intermediarios y clientes como vamos a aceptar una representación Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 84
85 Interfaz uniforme Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 85
86 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 86
87 Como se describen las APIs Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 87
88 Un ejemplo: Una aplicación quiere transferir U$S1000 de una cuenta bancaria a la otra Que Recursos y URIs tendriamos? Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 88
89 Un ejemplo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 89
90 Una transferencia... Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 90
91 ... respuesta Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 91
92 Status Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 92
93 Es esto RESTful? En realidad, son nombres de recursos Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 93
94 Es esto RESTful? A través de GET, queremos hacer una operación de modificación Debemos usar PUT Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 94
95 Es esto RESTful? Estamos usando GET y POST como sinónimos, cuando no lo son Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 95
96 Es esto RESTful? Estamos usando IDs internos de aplicación, cuando deberían utilizarse LINKS Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 96
97 Es esto RESTful? Estamos escondiendo errores del intermediario o del cliente Debemos usar los códigos de error de HTTP 4xx o 5xx Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 97
98 Web Service + REST Son web services desarrollados según la filosofía de REST El énfasis esta en el uso de una comunicación simple usando HTTP entre cliente y servidor, intercambiando POX (Plain Old Xml) También pueden intercambiarse otros formatos equivalente sencillos (JSON) Un ejemplo sencillo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 98
99 Web Service + REST Tenemos un servicio REST para obtener el valor de un stock en el mercado Este seria el REQUEST Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 99
100 Web Service + REST Y esta seria la respuesta Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 100
101 Comparación Sitios web, por el año 1992 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 101
102 Comparación Servicios web WS-*, desde el año 2000 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 102
103 Comparación Servicios web REST, desde el año 2006 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 103
104 Estandares Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 104
105 Servicio Web SOAP Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 105
106 Servicio web RESTful Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 106
107 Protocolos en SOAP Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 107
108 Protocolos en REST Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 108
109 JAX-RS Para escribir un servicio web que utilice REST, solo se necesita un cliente y un servidor que soporte HTTP Como en el caso de SOAP, a fin de eliminar el trabajo con protocolos de bajo nivel, aparece el API JAX-RS La implementación de referencia de esta API, se denomina Jersey (es un proyecto open source) Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 109
110 JAX-RS Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 110
111 JAX-RS En el ejemplo anterior, el recurso BookResource esta publicado en la URI /book El método getbooktitle() queda asociado al método GET HTTP, produciendo un contenido de tipo text/plain Para acceder al recurso, solo debemos usar un browser con la dirección Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 111
112 JAX-RS El servicio REST no implementa ninguna interfaz ni extiende ninguna clase Debemos usar la Si queremos usar un EJB, entonces solo podemos La clase debe ser public, y no abstract ni final Debe contener un constructor por defecto La clase no debe incluir el método finalize() Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 112
113 Default Providers Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 113
114 Interfaz de acceso al recurso JAX-RS define una serie de anotaciones, para indicar que método HTTP se utilizara para acceder a un recurso Estas anotaciones corresponden a los métodos Solo los métodos públicos de una clase pueden exponerse como métodos de recurso Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 114
115 Interfaz CRUD Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 115
116 Interfaz de acceso al recurso Cuando un método de recurso es invocado Los parámetros para los cuales hay un extractor, son cargados con dicho valor Los valores de parámetros no anotados, llamados entity parameters, es mapeado del cuerpo del request, a través de un entity provider Los métodos pueden devolver void, un tipo Java o un Response Response es usado cuando es necesario devolver mas información (metadatos) en la respuesta Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 116
117 Información contextual Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 117
118 Manejo de excepciones Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 118
119 Ciclo de vida Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 119
120 HelloWorld Creamos una web application Para exponer recursos REST, necesitamos una implementacion de REST Puede ser JAX-RS En el caso de JBoss, podemos usar RESTEasy Esta es una implementacion que ya viene incorporada en el servidor 6.0 Necesitamos que el web.xml sea version 3.0 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 120
121 HelloWorld <web-app version="3.0" xmlns=" xmlns:xsi=" xsi:schemalocation=" </web-app> Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 121
122 HelloWorld Creamos una clase HelloWorldResource package ejemplos; import public class public String helloworld() { return "Hello World!"; } } Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 122
123 HelloWorld Luego de creado el recurso, deployeamos y ejecutamos la aplicación web Accedemos al recurso, a través de la URL ello Deberíamos obtener Hello World!! Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 123
124 PathParam Permite extraer pedazos de la URL package ejemplos; import public class public String helloworld(@pathparam("name") final String name) { return "Hi!, how are you " + name; } } Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 124
125 PathParam Como antes, se deployea y ejecuta la aplicacion Debemos entrar a la URL: Deberíamos obtener: Hi!, how are you Pablo Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 125
126 Intercambio de XML Podemos intercambiar objetos XML, tanto para el resultado como para los parametros Para esto debemos usar providers JAXB (idem SOAP), que se encarguen de mapear instancias en documentos XML Por ejemplo, vamos a intercambiar objetos Java, Items Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 126
127 package public class Item { private String codigo; private int precio; public Item() { } public Item(String codigo, int precio) { this.codigo = codigo; this.precio = precio; } public String getcodigo() { return codigo; } public void setcodigo(string codigo) { this.codigo = codigo; } public int getprecio() { return precio; } public void setprecio(int precio) { this.precio = precio; } } Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 127
128 ItemResource package ejemplo; import public class ItemResource @Produces({ "application/xml" }) public Item getitem() { Item item = new Item("IPhone5", 1500); return item; } Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 128
129 ItemResource Si ejecutamos la aplicacion, al especificar application/xml, se utilizara el provider adecuado para obtener este XML <item> <description>iphone5</description> <price>1500</price> </item> Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 129
130 @FormParam Esta anotacion sirve para extraer informacion de un formulario <html> <body> <form method="post" action="login"> Address: <input type="text" name=" "><br> Password: <input type="text" name="password"><br> <br> <input type="submit"> </form> </body> </html> Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 130
131 @FormParam package ejemplos; import javax.ws.rs.formparam; import javax.ws.rs.post; import public class LoginResource public String String String password) { return "Ingreso con el " + + " y el password " + password; } Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 131
132 @QueryParam Es muy similar al anterior, solo que al usarlo, se trata de extraer el valor el query parameter con el nombre public String String idvalue) { return "Id es " + idvalue; } de proyecto>/login?id=12345 Instituto de Computación Facultad de Ingeniería UdelaR Montevideo, Uruguay 132
TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB
TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB Existen varios tipos de tecnologías para los Servidores Web, estas tecnologías se pueden dividir en 4 grupos principales que son: Tecnologías al lado del cliente
Más detallesTaller de Sistemas de Información 2. Web Services en Java y Java EE
Taller de Sistemas de Información 2 Web Services en Java y Java EE Plataformas de Web Services Las plataformas de Web Services son un conjunto de herramientas para un lenguaje de programación específico
Más detallesCurso SOA and Java Web Services with JAX-WS
Curso SOA and Java Web Services with JAX-WS Descripción: Los servicios Web están diseñados para permitir acceso basado en Web a software distribuido y servicios de negocio. Ofrecen un estándar y una arquitectura
Más detallesServicios Web. Andrés Pastorini. TRIA Tecnólogo Informático
Andrés Pastorini TRIA Tecnólogo Informático Un servicio web expone un conjunto de servicios para ser consumidos a través de la red. En otras palabras, un servicio web especifica un conjunto de operación(funciones
Más detallesWeb Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República
Web Services en Java Taller de Programación Instituto de Computación Facultad de Ingeniería Universidad de la República Contenido Motivación y Conceptos Funcionamiento Annotations Desarrollando una aplicación
Más detallesLa interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la
Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes
Más detallesTutorial Servicios Web
Tutorial Servicios Web 1. Servicios Web con REST Como ya hemos usado SOAP para WebService, podemos afirmar que es bien fácil de diseñar, pero algo complicado de consumir: se necesita toda una API para
Más detallesDesarrollo y servicios web
Desarrollo y servicios web Luisa Fernanda Rincón Pérez 2014-2 Qué vimos la clase pasada? Introducción a Big Data Introducción a bases de datos NOSQL Características bases de datos NOSQL MongoDB como motor
Más detallesTEMA 5. Otras arquitecturas distribuidas IV. Web Services
TEMA 5. Otras arquitecturas distribuidas IV. Web Services IV. Web Services 1. Qué son los Web Services? 2. Ejemplos de Web Services 3. Tecnologías y arquitectura 3.1. Arquitectura 3.2. Lenguaje de descripción:
Más detalles4.5 APIs Java y Java EE para Servicios Web
4.5 APIs Java y Java EE para Servicios Web 4.5.1 JAXB (Java Architecture for XML Binding) APIs clásicas para procesamiento de documentos XML SAX (Simple API for XML): procesamiento de XML basado en eventos
Más detallesRequisitos. Universidad ORT Arquitectura de Software
Requisitos Java Development Kit (JDK) 1.5 o superior NetBeans IDE 6.5 o superior JBoss Application Server 4.2.x o 5.x.x Variable de entorno JAVA_HOME apuntando al directorio de instalación de la JDK 1
Más detallesDocumentación Técnica Conector
Documentación Técnica Conector Torre Ejecutiva Sur Liniers 1324, piso 4 Montevideo Uruguay Tel/Fax: (+598) 2901.2929* Email: contacto@agesic.gub.uy www.agesic.gub.uy Indice 1 Introducción...4 2 Casos
Más detallesQué son los Web Services?
III. Web Services 1. Qué son los Web Services? 2. Ejemplos de Web Services 3. Tecnologías y arquitectura 3.1. Arquitectura 3.2. Lenguaje de descripción: WSDL 3.3. Protocolo: SOAP 3.4. Registro de servicios:
Más detallesTema 6: Comparativa CORBA/Servicios Web
Tema 6: Comparativa CORBA/Servicios Web Introducción Para establecer una comparativa, es preciso tener en cuenta CORBA se introdujo en 1991 y Servicios Web en el 2000 CORBA es una solución más madura y
Más detallesJAVA EE 5. Arquitectura, conceptos y ejemplos.
JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones
Más detallesUniversidad ORT - Arquitecturas de Software sobre plataforma JEE Web Services (parte 1)
Requisitos Oracle Java Development Kit (JDK) 6 NetBeans 6.9.1 con GlassFish Application Server 3 integrado Variable de entorno JAVA_HOME apuntando al directorio de instalación de la JDK Introducción El
Más detallesPORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto
PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto Introducción: Sobre casi cualquier tema del quehacer humano que se aborde, existen
Más detallesSERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO
SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3
Más detallesWeb Services. Richard Rossel rrossel@inf.utfsm.cl. 23 de noviembre de 2004. Web Services
Richard Rossel rrossel@inf.utfsm.cl 23 de noviembre de 2004 JAVA2 TOC s JAVA2 JAVA2 Definición Aplicaciones Autocontenidas y Modulares Basado en estándares (XML,HTTP) Aplicaciones se anuncian por la red
Más detallesCursos de Extensión Universitaria UNIVERSIDAD DE OVIEDO. Servicios Web (II)
Fernández Acebal acebal@ieee.org OOTLab PROGRAMACIÓN ORIENTADA A OBJETOS CON C# EN LA PLATAFORMA.NET (II) Dpto. de Informática Lab - Laboratorio de Tecnologías Orientadas a Objetos www.ootlab.uniovi.es
Más detalles5.1 Introducción a Servicios Web
5.1 Introducción a Servicios Web Introducción Continuando con el ejemplo de intercambio de información de películas... => Actualmente ya no es necesario implementar la solución sugerida a mano Se han estandarizado
Más detallesService Oriented Architecture
Programación Concurrente y Distribuida Ingeniería en Informática Service Oriented Architecture José Carlos Cortizo Pérez josecarlos.cortizo@uem.es http://www.esp.uem.es/jccortizo D. Sistemas Informáticos
Más detallesServicios web. Jorge Iván Meza Martínez jimezam@gmail.com
Servicios web Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/71 Contenidos Que es un servicio web. Tecnologías
Más detallesCapacitación Efectiva SOA y Web Services con Java
Descripción: SOA es un paradigma de arquitectura para diseñar y desarrollar sistemas distribuidos. Las soluciones SOA han sido creadas para satisfacer los objetivos de negocio las cuales incluyen facilidad
Más detallesSi usted quiere desarrollar con Bluevia y Java, esto es lo primero que debe saber
LIMINAL Si usted quiere desarrollar con Bluevia y Java, esto es lo primero que debe saber Mario Linares Vásquez mario.linares@liminal-it.con Junio 30 de 2011 Network as a Service - NaaS Que información
Más detallesGUIA DE LABORATORIO N 8 A(Netbeans-java,Glassfish)
UNIVERSIDAD DE EL SALVADOR FACULTAD DE INGENIERIA Y ARQUITECTURA ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS PROGRAMACION PARA DISPOSITIVOS MOVILES PDM115 Ciclo I-2014 GUIA DE LABORATORIO N 8 A(Netbeans-java,Glassfish)
Más detalles1 Índice... 1. 2 Introducción... 2. 2.1 Propósito... 2. 2.2 Alcance... 2. 3 Modelo Arquitectónico Inicial... 3
1 Índice 1 Índice... 1 2 Introducción... 2 2.1 Propósito... 2 2.2 Alcance... 2 3 Modelo Arquitectónico Inicial... 3 3.1 Diagrama de alto nivel de la arquitectura... 3 3.2 Vista de Casos de Uso... 5 3.2.1
Más detallesAplicaciones y Servicios Web (Web Services)
Aplicaciones y Servicios Web (Web Services) Joaquín Salvachúa DIT- jsalvachua@.upm.es -1- Internet NG Índice Problema a resolver Arquitectura SOAP WSDL UDDI Conclusiones -2- Internet NG Aplicaciones WEB
Más detallesSISTEMAS DE INFORMACIÓN III TEORÍA
CONTENIDO: Introducción a los Web services Las bases de los Web services La nueva generación de la Web Interactuando con los Web services La tecnología de Web services XML: Lo fundamental WSDL: Describiendo
Más detallesGALA. Servicios WEB. Curso ASP.NET Desarrollo de Sitios y Servicios Web con Visual Basic 2010, 24 h. L25. Servicios Web en Integración
L25. Servicios Web en Integración L25. en ASP.NET Tipo de proyecto Archivos.ASMX Igual que los.aspx, UN URL Imports System Imports System.Web.Services
Más detallesEspecificación WebService para:
Especificación WebService para: Bandeja de salida Carga masiva Consulta de reportes Bogotá, Diciembre 2010 Modelo Unico de Ingresos, Servicio y Control Automatizado Contenido Procedimiento y Especificación
Más detallesServicios Web con Java EE
Introducción Servicios Web con Java EE Daniel López Fuentes Laura Tolsada Bris Sergio Tejero López Irene Clemente Bueno Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar
Más detallesServicios Web con Java EE
Servicios Web con Java EE Daniel López Fuentes Laura Tolsada Bris Sergio Tejero López Irene Clemente Bueno Departamento de Ingeniería Telemática Universidad Carlos III de Madrid 2 Introducción Un servicio
Más detallesGLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.
GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.
Más detallesLICENCIA PROFESIONAL EN DESARROLLO DE SOFTWARE PARA APLICACIONES WEB
LICENCIA EN DESARROLLO DE SOFTWARE PARA HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS 1. Nombre de la asignatura Web Services 2. Competencias Desarrollar Aplicaciones web a través de metodologías
Más detallesIntroducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com
Introducción a los Servicios Web Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com Servicios Web y Soa En un contexto SOA y los servicios web son una oportunidad de negocios en la actualidad.
Más detalles2. Se indica el nombre y las configuraciones necesarias para la creación del proyecto
Creación de un Web Service 1. Crear un proyecto Web de Java 2. Se indica el nombre y las configuraciones necesarias para la creación del proyecto 3. Se dejan por defecto los paquetes de archivos Java y
Más detallesIntroducción a WS-REST. Ing. Guillermo Roldós Agosto 2010
Introducción a WS-REST Ing. Guillermo Roldós Agosto 2010 Agenda Descripción general Arquitectura orientada a recursos (ROA) Soporte Java y.net Calidad de servicio Casos de estudio Dominios de aplicación
Más detallesCurso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos
Más detalles2524 Developing XML Web Services Using Microsoft ASP.NET
2524 Developing XML Web Services Using Microsoft ASP.NET Introducción La meta de este curso es de proveer a los estudiantes con el conocimiento y habilidades requeridas para desarrollar soluciones basadas
Más detallesUniversidad ORT - Arquitectura de Software. Requisitos
Requisitos Versión 1.5 (o superior) de la JDK de Java NetBeans 6.5 como IDE de desarrollo JBoss 4.2.x como Application Server Variable de entorno de Windows JAVA_HOME apuntando al directorio de instalación
Más detallesWorkflows? Sí, cuántos quiere?
Workflows? Sí, cuántos quiere? 12.11.2006 Servicios Profesionales Danysoft Son notables los beneficios que una organización puede obtener gracias al soporte de procesos de negocios que requieran la intervención
Más detallesPortal Inteligente Medellín Documentación de la Arquitectura de Software
Guías para las API de servicios Portal Inteligente Medellín Documentación de la Arquitectura de Software Juan G. Lalinde-Pulido Claudia M. Zea Luis F. Londoño Nicolás Hock Sergio A. Monsalve Departamento
Más detallesMICROSITIOS. Perfiles
MICROSITIOS Perfiles API para el consumo de servicios encargados de la creación, visualización, edición, eliminación y demás operaciones sobre los perfiles de usuarios de Metaportal. METAPORTAL 18/07/2014
Más detallesDESARROLLO WEB EN ENTORNO SERVIDOR
DESARROLLO WEB EN ENTORNO SERVIDOR CAPÍTULO 7: Programación de servicios Web Marcos López Sanz Juan Manuel Vara Mesa Jenifer Verde Marín Diana Marcela Sánchez Fúquene Jesús Javier Jiménez Hernández Valeria
Más detallesCurso de Spring Framework
Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1 Spring es un proyecto de código abierto (open source), originalmente creado por Rod Johnson y descrito en su
Más detallesPlataforma de Contratación del Sector Público
del Sector Público Dirección General del Patrimonio del Estado Subdirección General de Coordinación de la Contratación Electrónica Versión: 1. Fecha: 10/12/2015 DEL PATRIMONIO DEL DEL ESTADO CONTROL DE
Más detallesIntroducción a JAX-WS Web Services
INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO ALUMNO: SANLUIS CASTILLO JOSE DAVID PROFESOR: CIFUENTES ALVAREZ ALEJANDRO SIGFRIDO MATERIA: WEB APPLICATION DEVEPLOMENT Introducción a JAX-WS
Más detallesCREAR UN SERVICIO WEB BASICO CON JAVA AXIS2. Víctor J. Sosa vjsosa@tamps.cinvestav.mx
CREAR UN SERVICIO WEB BASICO CON JAVA AXIS2. Víctor J. Sosa vjsosa@tamps.cinvestav.mx En este documento explicaré brevemente cómo construir un servicio web con Java Axis2 y cómo invocarlo desde un cliente
Más detallesInside. Gestión de Expedientes y Documentos Electrónicos
Inside Gestión de Expedientes y Documentos Electrónicos Documento de Integración Sistemas Desarrollo Versión 1.0 Fecha de revisión 25/02/2013 Realizado por Sistemas Desarrollo Inside v_1.0 / 1 ÍNDICE 1
Más detallesService Oriented Architecture: Con Biztalk?
Service Oriented Architecture: Con Biztalk? Pablo Abbate Servicios Profesionales Danysoft SOA supone una nueva forma de pensar acerca de la arquitectura IT para las empresas. De hecho, es una asociación
Más detallesE-Government con Web Services
E-Government con Web Services Fernando Leibowich Beker * Uno de los grandes avances que produjeron las Nuevas Tecnologías de la Información y la Comunicación es la posibilidad de generar redes de computadoras
Más detallesHTTP Introducción. Redes de Datos Ing. Marcelo Utard / Ing. Pablo Ronco FACULTAD DE INGENIERIA UNIVERSIDAD DE BUENOS AIRES
Introducción Protocolo de capa de aplicación utilizado para la transferencia de Recursos u objetos. Opera sobre TCP típicamente en el puerto 80 Simple Stateless Genérico Utiliza las extenciones MIME. Transporte
Más detalles1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).
1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada
Más detallesIntroducción a XML (III) - Web Services Huibert Aalbers Senior Certified Software IT Architect
Introducción a XML (III) - Web Services Huibert Aalbers Senior Certified Software IT Architect IT Insight podcast Este podcast pertenece a la serie IT Insight Pueden suscribirse al podcast a través de
Más detallesPráctica 1: Instalación de un servidor de aplicaciones web y diseño de la vista de una aplicación
Práctica 1: Instalación de un servidor de aplicaciones web y diseño de la vista de una aplicación Sistemas de Información Grado de Informática Dpto. de Informática e Ingeniería de Sistemas, Universidad
Más detallesTutorial: Primeros Pasos con Subversion
Tutorial: Primeros Pasos con Subversion Introducción Subversion es un sistema de control de versiones open source. Corre en distintos sistemas operativos y su principal interfaz con el usuario es a través
Más detallesManual de referencia para la invocación de WebServices con Aduanas (SMS v3.0)
Valparaíso, 24 de abril de 2006 Manual de referencia para la invocación de WebServices con Aduanas (SMS v3.0) Introducción El sistema SMS (Sistema de Mensajería por SOAP) fue diseñado con el fin de servir
Más detallesSesión 17. Servicios web RESTful
Sesión 17. Servicios web RESTful Luisa Fernanda Rincón Pérez 2015-1 Qué vimos la sesión pasada? 1. Consumir servicio web SOAP desde JAVA 2. Consumir servicio web en PHP 3. Exponer servicio web en PHP Qué
Más detalles1. Definición. Open Source. Escalable. Alto desempeño. Arquitectura Modular. Producto de licencia de código abierto sin coste adicional.
1. Definición JBoss es un proyecto de código abierto, con el que se consigue un servidor de aplicaciones basado en J2EE, e implementado al 100% en Java. Por lo tanto al estar basado en Java, JBoss puede
Más detallesSeguridad de la aplicación para servlets y JSP (página activas java)
Seguridad de la aplicación para servlets y JSP (página activas java) Autenticación de Servlets (java) Usuarios y roles. Autenticación declarativa. Portabilidad Tipos de autenticación Básica. Digest. Basada
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer
Más detallesUniversidad Nacional Autónoma de México Dirección de Sistemas Dirección General de Personal
Universidad Nacional Autónoma de México Dirección de Sistemas Dirección General de Personal Presenta: Mtro. Israel Ortega Cuevas para la Red Universitaria de Colaboración en Ingeniería de Software y Base
Más detallesCapitulo 5. Implementación del sistema MDM
Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo
Más detallesSistemas Operativos Distribuidos. Introducción a los Servicios Web (Web Services)
Introducción a los Servicios Web (Web Services) 2 Evolución de la Web Pasado: Web de documentos Páginas estáticas Web como un enorme repositorio de información Tecnologías: HTTP + HTML Presente: Web de
Más detallesProyecto Help Desk en plataforma SOA Glosario Versión 1.3. Historia de revisiones
Proyecto Help Desk en plataforma SOA Glosario Versión 1.3 Historia de revisiones Fecha Versión Descripción Autor 18/08/2005 1.0 Terminología a utilizar en este proyecto. 22/08/2005 1.1 Se agregaron los
Más detalles.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...
.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS Definiciones...2 C# y Java.....3 Similitudes...4 Ventajas...4 Definiciones Sobre J2EE J2EE (Java 2 Platform Enterprise Edition)
Más detallesManual de referencia de sistema para la invocación de Web Services con Aduanas (SMS v3.1.12)
Subdirección de Informática Manual de referencia de sistema para la invocación de Web Services con Aduanas (SMS v3.1.12) VERSION 3.1.12 MAYO 2008 1 Introducción El sistema SMS (Sistema de Mensajería por
Más detallesPatrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms
Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura
Más detallesEspecificación Técnica de Protocolo Para el intercambio de información entre Telecom Personal y sus proveedores de servicios
Especificación Técnica de Protocolo Para el intercambio de información entre Telecom Personal y sus proveedores de servicios Página 1 de 26 09/12/2009 Página 2 de 26 09/12/2009 Índice OBJETIVOS... 5 INTRODUCCIÓN...
Más detallesCapítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable
Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable 1. Introducción. El Sistema de Administración de Información de un Negocio Franquiciable (SAINF)
Más detallesIngeniería de Software en SOA
Ingeniería de Software en SOA ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ingeniería de Software en SOA Curso 2014/2015 1 / 51 Índice 1 Directrices para la IS en SOA 2 Modelo de referencia
Más detallesDesarrollo de Sistemas Software Basados en Servicios y Componentes
Desarrollo de Sistemas Software Basados en Servicios y Componentes Bloque Docente SERVICIOS WEB Parte 2 Portada Escuela Superior de Ingeniería (ESI) Universidad de Almería Índice Visualización WSDL (servicios
Más detallesUna puerta abierta al futuro
Una puerta abierta al futuro SOA E ITIL EN LA LEY DE ACCESO ELECTRÓNICO DE LOS CIUDADANOS A LOS SERVICIOS PÚBLICOS (LAECSP) por francisco javier antón Vique La publicación de la Ley de Acceso electrónico
Más detallesCapítulo 5. Cliente-Servidor.
Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor
Más detallesANEXO 1. ANEXO TÉCNICO
ANEXO 1. ANEXO TÉCNICO DESCRIPCIÓN DEL CANAL DE COMUNICACIÓN PUNTOS DE ATENCIÓN DIGITAL, TRÁMITES Y SERVICIO- KIOSKOS El sistema de la aplicación móvil cuenta con una serie de funciones que deberán ser
Más detallesARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
Más detallesPROTOCOLOS DE APLICACIÓN PRÁCTICA EN INFOMED INTEROPERABILIDAD
PROTOCOLOS DE INTEROPERABILIDAD APLICACIÓN PRÁCTICA EN INFOMED PRESENTA: ING. VICTOR RICARDO DÍAZ COORDINADOR DEL GRUPO DE DESARROLLO CNICM - INFOMED GRUPO DE DESARROLLO: DESARROLLO@INFOMED.SLD.CU OBJETIVO
Más detallesManual de Integrador.NET
Manual de Integrador.NET viafirma platform v3.5 ÍNDICE 1. INTRODUCCIÓN... 5 1.1. Objetivos... 5 1.2. Referencia... 5 2. GUÍA RÁPIDA... 5 2.1. Añadir las dependencias necesarias... 5 2.2. Página de acceso
Más detallesSistema de gestión de tareas y proyectos
Sistema de gestión de tareas y proyectos Propuesta de proyecto Seminario de Informática I Luis Muñoz Enrique Viard Contenido Introducción... 3 Descripción general... 3 Arquitectura propuesta... 5 Requisitos...
Más detallesServicios Web Ubicuos Activados por Voz
Servicios Web Ubicuos Activados por Voz Parte II. Servicios Web Juan José Ramos Muñoz Dpto. de Teoría de la Señal, Telemática y Comunicaciones La Web de las cosas Servicios Web Ubicuos Activados por Voz
Más detallesPRUEBAS FUNCIONALES Y DE ACEPTACIÓN
PRUEBAS FUNCIONALES Y DE ACEPTACIÓN Por: Julián Camilo Ortega Muñoz Pontificia Universidad Javeriana 2013 INTRODUCCIÓN Este documento tiene como propósito demostrar que las funcionalidades de la aplicación
Más detallesDIPLOMADO EN SEGURIDAD INFORMATICA
DIPLOMADO EN SEGURIDAD INFORMATICA Modulo 9: Soporte Computacional Clase 9_3:Protocolos de comunicación y conectividad de arquitecturas multiplataforma. Director Programa: César Torres A Profesor : Claudio
Más detallesLABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO
UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO PRÁCTICA 4: Implementación de un Cliente de Correo
Más detallesenvía al browser. El browser despliega el archivo.
SERVLETS Dr. Raúl Perez Páginas web estáticas Como se despliega una página web en un browser Normalmente la página se crea usando HTML y se almacena como un archivo en el servidor de web. El usuario escribe
Más detallesCapitulo III. Diseño del Sistema.
Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje
Más detallesMWEB 2007 Acceso Dinámico a Servicios de una Infraestructura Web desde Teléfonos Móviles
MWEB 2007 Acceso Dinámico a Servicios de una Infraestructura Web desde Teléfonos Móviles Elena Sánchez Nielsen Sandra Martín Ruiz Jorge Rodríguez Pedrianes UNIVERSIDAD DE LA LAGUNA CONTENIDO DE LA PRESENTACIÓN
Más detallesSEGURIDAD OCTUBRE 2015. Versión 1
SEGURIDAD OCTUBRE 2015 Versión 1 1 INDICE 1 INDICE... 2 2 INTRODUCCIÓN... 3 2.1 REQUISITOS... 3 2.2 OBJETIVOS Y ALCANCE DEL PRESENTE DOCUMENTO... 3 3 SEGURIDAD EN LAS COMUNICACIONES... 4 4 LOS CLIENTES...
Más detallesLibertya Web Service r46gc Índice de contenido
Libertya Web Service r46gc Índice de contenido Objetivos de este documento...2 Prerequisitos...3 Instalación del servicio...3 Acceso al Servicio...3 Mecanismo de Interacción...3 ParameterBean y Result
Más detallesARC 108 Component Model
ARC 108 Component Model Evolución Tecnológica de RNOM Banco de Previsión Social Tabla de Contenidos ARC 108 Component Model 1. INTRODUCCIÓN 3 2. OBJETIVO 4 3. NOTACIÓN 5 4. ARQUITECTURA GLOBAL 6 4.1. DIAGRAMA
Más detallesEjercicios de AJAX y REST
Índice 1 AJAX (1 punto)... 2 2 Servicios REST (1.5 puntos)... 3 3 Gestión de errores en servicios REST (0.5 puntos)...5 1. AJAX (1 punto) Vamos a cambiar la búsqueda de usuarios para que funcione mediante
Más detallesVE-Ventanilla Electrónica Especificación Caso de Uso VE-CU-WS-Consumir-Comunicaciones
VE Versión: 1.0.0 ve.cu.ws.consumir.comunicaciones.doc Fecha: 09/04/2014 VE-Ventanilla Electrónica Especificación Caso de Uso VE-CU-WS-Consumir-Comunicaciones Archivo: VE_ve.cu.ws.consumir.comunicaciones.doc
Más detallesPRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información
Más detallesCFDi Client Manual de Usuario
CFDi Client Manual de Usuario Título del documento: CFDi client Nombre del fichero: ES CFDiClient Manual de Usuario.odt Versión: Estado: VIGENTE Fecha: 28/02/2011 Autor: Oscar Albert Arcas Revisión, Aprobación
Más detallesPRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información
Más detallesRecomendaciones para procesos de integración con Web-Services
Recomendaciones para procesos de integración con Web-Services Este documento es producto de la experiencia en integración vía Web Services. La información recopila una serie de lecciones aprendidas a partir
Más detallesWEB SERVICES CREACIÓN DEL SERVICIO
WEB SERVICES CREACIÓN DEL SERVICIO 1. Definición proyecto En el presente tutorial se va a realizar dos proyectos: el primero contendrá los servicios web para gestionar una lista de personas, y el segundo
Más detallesGUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII
GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUIA DISPONIBLE EN: http://preparadorivan.blogspot.com/ - http://preparadormssi.50webs.com/inicio.html La World Wide Web o la Web, es una de las múltiples
Más detallesFigura 7-1 Enlace para instalar el servidor web Apache Jakarta Tomcat 4.1.12.
Unidad 7 Servlets 7.1 Marco teórico Lo que permite que ordenadores remotos con procesadores y sistemas operativos diferentes se entiendan y en definitiva que Internet funcione como lo hace en la actualidad,
Más detallesElastix Web Services (WSDL) Manual de Usuario
Elastix Web Services (WSDL) Manual de Usuario Elaborado por: Departamento de Desarrollo de Elastix Versión: Elastix 2.0.4-Beta 2 Versión Versión de Elastix VERSIONAMIENTO Fecha Editado por Aprobado Por
Más detalles