You are on page 1of 22

Servicios XML, sesiones

UNIDAD

Estructura de contenidos:
1. Servicios Web Services 2. Sesiones. 3. Controles de Usuario Web.

http://www.ucv.edu.pe/cis/ cis@ucv.edu.pe

Introduccin

Estimado participante:

Una forma de poder minimizar cdigo es consumiendo servicios generados previamente, la ventaja de utilizar servicios, es que nos permite crear el service en un lenguaje de programacin diferente al del sistema que lo consumir. Lo que convierte a los webservices en una herramienta esencial para un proyecto web. Junto a estos servicios es necesario crear lo mecanismo necesario para poder transportar datos de un formulario a otro; De esa manera permite la existencia de una conversacin entre formularios.

Pgina |1

Pgina |2

WEB SERVICES

Un Servicio Web es una entidad programable, proporcionado un elemento particular de funcionalidades, como Lgica de aplicacin. Puede ser usado internamente por cualquier aplicacin o externamente, a travs de la internet por cualquier nmero de aplicaciones usando estndares como XML (Lenguaje de Marca Extensible) y HTTP (Protocolo de Transferencia de Hipertexto). Algunos Especificaciones Ncleos de un servicio Web son: SOAP: Es un Protocolo basado en XML. WSDL: Es un formato XML describe la interfaz pblica a los servicios Web UDDI: Es un protocolo para publicar y descubrir Metadatos Los servicios web permiten la integracin de aplicaciones desarrolladas en diferentes lenguajes y ejecutndose en diferentes plataformas. Las aplicaciones pueden implementar un servicio web con formato XML.

Fig.: N 1 Los web services pueden trabajar en cualquier


plataforma y cualquier lenguaje

1.1.

CARACTERSTICAS Interoperabilidad: Un servicio remoto debe permitir su utilizacin por clientes de otras plataformas.

Pgina |3

Compatible con Internet: Debe poder atender las solicitudes de clientes que acceden desde servicios remotos desde internet. Interfaces definidas: No debera haber ambigedad acerca del tipo de dato enviado y recibido desde un servicio remoto. Ms an, los tipos de datos definidos en el servicio remoto deben poderse corresponder razonablemente bien con los tipos de datos de la mayora de los lenguaje de programacin procedimentales. Posibilidad existentes: de La aprovechar los estndares servicio de Internet debera implementacin del remoto

aprovechar estndares de Internet existentes tanto como sea posible y evitar reinventar soluciones a problema que ya se han resuelto. Soporte para cualquier plataforma y lenguaje: Un cliente debera ser capaz de implementar un nuevo servicio Web existente independientemente del lenguaje de programacin en el que se halla escrito el cliente y la plataforma en la que est trabajando. 1.2. ESTNDARES Web Services Protocol Stack XML (Extensible Markup Language) SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote Producer Call) HTTP, FTP o SMTP WSDL (Web Services Description Languages) UDDI (Universal Description, Discovery and Integration) WS-Security (Web Service Security)

.
Importante:

El consorcio W3C define los Servicios Web como sistemas de software diseados para soportar una interaccin interoperable mquina a mquina sobre una red. Los Servicios Web suelen ser APIs Web que pueden ser accedidas dentro de una red (principalmente Internet) y son ejecutados en el sistema que los aloja.

Pgina |4

1.3.

CREAR UN SERVICIO WEB Para eso debemos crear un nuevo proyecto como se muestra en la figura.

Como puede usted apreciar se genera un proyecto con un conjunto de recurso entre ellos est el archivo services1.asmx a la cual procederemos a cambiar de nombre para poder tener una mejor administracin del archivo.

El archivo deber quedar como se muestra en la siguiente imagen.

Pgina |5

Tambin hacemos lo mismo en el marcado del Archivo.

Ahora creamos la funcin que ser invocada desde otra aplicacin.

Pgina |6

Luego de insertar el cdigo se debe de ejecutar con la finalidad de verificar los mtodos que se han creados.

Pgina |7

Para ver el funcionamiento del servicio se de hacer clic en la funcin y luego de eso ingresar el valor del nmero.

El resultado se mostrar en otra pgina web en formato XML como se aprecia en la siguiente figura.

Pgina |8

Este servicio luego es invocado desde una aplicacin remota y para ello es necesario saber el mtodo y el link a cual invocar eso lo podremos apreciar en el taller al final de la sesin.

SESIONES El objeto Session, nos permite crear sesiones de usuarios, que tiene un tiempo de validez antes de expirar, por default su tiempo es de 20 minutos. El mismo tiene varios usos y no slo el de crear sesiones, su uso es tpico en aplicaciones con carritos de compra, en foro para establecer un tiempo mnimo para poder votar o volver a escribir un mensaje.
Importante:

!
2.1

Las sesiones en asp.net son automticas no hay que crearlas y/o iniciarlas por lo tanto para aplicar seguridad a una pgina solo debemos implementar una autentificacin.

VARIABLE DE SESIN

Las variables de sesin sirven para controlar datos dentro de una sesin y estn activas y disponibles solamente para dicha sesin, no hay necesidad de inicializarlas, para crear una variable de nombre Login se deber declarar de la siguiente manera. Session(login) = ValorAsignado Esta variable estar alumno mientras dura la sesin. Las variables de aplicacin sirven para controlar datos dentro de la aplicacin y estarn activos y disponibles durante todo el proceso de la aplicacin sin diferenciar inicios o cierres de sesin y estn activos y disponibles para todos los usuarios. Si se desea cambiar el tiempo por defecto en el cual una sesin termina se tiene que utilizar la siguiente mtodo.

Pgina |9

Me.Session.Timeout = 10 Para invocar el un parmetro de las sesin se deber realizar lo siguiente Label1.Text = Me.Session("login")

Importante:

!
3

Las sesiones en asp.net finaliza cuando el navegador abandona la sesin, ya sea ejecutando el cdigo que expresamente la finaliza o porque se ha transcurrido el tiempo mximo de duracin que se ha establecido para las sesiones y no se vuelto a realizar ninguna peticin adicional.

CONTROLES DE USUARIO WEB Un control de usuario es un tipo de control compuesto que funciona de forma similar a la de una pgina Web ASP.NET: se pueden agregar controles de servidor Web y marcado a un control de usuario, as como definir propiedades y mtodos para el control. A continuacin, puede incrustarlos en pginas Web ASP.NET, donde actan como una unidad. 3.1. CONTROLES DE USUARIO VS CONTROLES PERSONALIZADOS

En ocasiones, es posible que necesite cierta funcionalidad en un control que no est incluida en los controles de servidor Web ASP.NET integrados. En estos casos, puede crear sus propios controles. Dispone de dos opciones. Puede crear: Controles de usuario. Los controles de usuario son

contenedores en los que puede colocar controles de formato y de servidor Web. A continuacin puede tratar el control de usuario como una unidad y definir propiedades y mtodos para el mismo. Controles personalizados. Un control personalizado es una clase escrita por un desarrollador que se deriva de Control o WebControl.

P g i n a | 10

Los controles de usuario son mucho ms fciles de crear que los controles personalizados, ya que es posible reutilizar los ya existentes. Esto permite crear con facilidad controles con elementos de interfaz de usuario complejos 3.2 ESTRUCTURA DE LOS CONTROLES DE LOS USUARIOS Un control de usuario Web ASP.NET es similar a una pgina Web ASP.NET completa (archivo.aspx) e incluye una pgina de interfaz de usuario y cdigo. El proceso de creacin del control de usuario es muy similar al proceso de creacin de una pgina ASP.NET, slo que al final se agregan el formato y los controles secundarios necesarios. Al igual que una pgina, un control de usuario puede incluir el cdigo necesario para manipular su contenido e incluso realizar tareas como el enlace de datos. Un control de usuario se diferencia de una pgina Web ASP.NET en los siguientes aspectos: La extensin de nombre de archivo para el control de usuario es .ascx. En lugar de una directiva @ Page, el control de usuario contiene una directiva @Control que define la configuracin y otras propiedades. Los controles de usuario no se pueden ejecutar como archivos independientes. En su lugar, debe agregarlos a las pginas ASP.NET, como hara con cualquier otro control. El control de usuario no contiene elementos html, body o form. Estos elementos deben estar en la pgina de alojamiento.
Importante:

En un control de usuario puede utilizar los mismos elementos HTML (excepto html, body y form) y controles Web que en una pgina Web ASP.NET. Por ejemplo, si est creando un control de usuario para utilizar una barra de herramientas, puede colocar una serie de controles de servidor Web Button en el control y crear controladores de eventos para los botones.

P g i n a | 11

AUTOEVALUACIN PRACTICA GUIADA: Realizar una aplicacin que permita ingresar los datos de un alumno y sus respectivas 4 notas, la aplicacin deber usar un servicio web que calcule el promedio de las 4 notas ingresadas, pero para esto se debe tener en cuenta el tipo de promedio que se desea; existe 2 tipos uno bsico ((N1 + N2+ N3+ N4)/4) y otro que se realiza con la siguiente formula ((N1 + N2+ N3+ N4x2)/5) a estos promedios lo llamaremos promedio A y promedio B respectivamente. Se pide enviar los datos del formulario a otra pgina en la cual se ver la condicin del alumno si est aprobado o no. Algo muy importante es que se debe considerara que los campos deben de llenarse Obligatoriamente. Paso 1 Primero crearemos el diseo del formulario que capturara los datos del alumno, asignndoles los nombres a los controles que utilizaremos.

Estimado alumno puede apreciar que aparte de dar los nombres a los controles tambin le estamos asignando un control de validacin y todo se mostrar en el control validationSummary.

P g i n a | 12

PASO 2 Una vez que usted realiz la interfaz para la captura de datos del alumno se proceder a realizar el webservice con la finalidad de poder invocarlo desde el proyecto y que calcule el promedio segn requerimiento.

Una vez creado el web servicesPromedios se procede a invocarlo para eso de deber agregar una nueva referencia en el proyecto taller7.

P g i n a | 13

En el cuadro de dialogo que se muestra insertar la direccin del servicioweb.

Una vez ingresado la referencia y haciendo clic en icono verde de siguiente se deber mostrar el cuadro de dialogo de la siguiente manera.

P g i n a | 14

Asignamos un nombre a la referencia para poder visualizarlo de una mejor manera en el explorador de soluciones.

El explorador de soluciones deber quedar de la siguiente manera.

Agregar un nuevo botn para permitir el tipo de promedio A y B como se muestra en la siguiente figura.

P g i n a | 15

Ahora una vez hecha la referencia lo que falta es invocarlos desde el formulario. Para eso haremos doble clic en el botn promediar y proceder a colocar el cdigo de la siguiente imagen.

P g i n a | 16

Luego ejecute el proyecto taller7 y se deber llenar los datos que te solicita el formulario por ser estos validados.

P g i n a | 17

Paso 3 Una vez que se comprueba que el promedio se genera usando el servicio procedemos a insertar un nuevo botn en el formulario para poder enviar los datos necesarios para indicar la condicin del alumno. Este botn se mostrara solo si el promedio es igual o mayor que 0.

Despus de haber insertado los dos controles se proceder a modificar el cdigo del os botones Promedio A y Promedio B para que se visualice los nuevos controles.

P g i n a | 18

Como se puede apreciar en la figura anterior se colocara su estado visible cuando se presione uno de los botones que permiten sacar el promedio. Paso 4 Se procede a realizar el cdigo del botn mostrar que permite enviar los datos por medio de una sesin a otro formulario y generar un mensaje.

Paso 5 Se inserta un web form de nombre Mensaje.aspx y se procede a ingresar el siguiente cdigo.

P g i n a | 19

Y cuando se presione el botn verde debe salir el siguiente mensaje.

Paso 6 Para que se pueda mostrar este mensaje se debi colocar en el webform Mensaje el siguiente cdigo.

P g i n a | 20

P g i n a | 21

You might also like