Aplicaciones web. … HTTP Aplicaciones con páginas estáticas Subdirectorio especial: \WEB-INF Fichero de configuración (opcional): \WEB-INF\web.xml Ficheros.

Slides:



Advertisements
Presentaciones similares
Desarrollo de aplicaciones en n- capas
Advertisements

JEE Introducción a Java Enterprise Edition (JEE) y el modelo Enterprise Java Beans (EJB)
Programación Orientada a Objeto 1
Curso de Java “Java para Web” Rogelio Ferreira Escutia.
WebScan Aplicación Web para la Navegación mediante Barrido Eric Noam Rodriguez Suazo.
Nau Gran dHivern Intr. a la creación y gestión de páginas web Introducción a la web.
Internet y tecnologías web
Fernando Alonso Blázquez Sesiones 06 de Mayo de 2004.
Fernando Alonso Blázquez Formularios en lenguaje HTML 26 de Febrero de 2004.
Servicios Web XML 03 de Junio de 2004 Fernando Alonso Blázquez.
Programación Orientada a Objeto 1
ADELA TORRES JONATHAN BEJARANO
Servidores Web Capítulo 2.
J2EE – Java 2 Enterprise Edition
Jakarta Tomcat (Contenedor de servlets/jsps)
Arquitectura Web en Aplicaciones Empresariales Java/J2EE
Aplicaciones J2EE.
Arquitectura, conceptos y ejemplos
La Plataforma Holmes y Aplicaciones
"java del lado del servidor" Servlet y JSP Java Server Pages.
Servlets Servlets.
Curso de Java y Aplicaciones Web
Módulo 1: Primeros Pasos
Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización Entre plataformas Entre lenguajes.
Investigación Servidor de Aplicaciones WebSphere
Java 2 Platform Enterprise Edition
Características generales de un servicio Web.
Mecanismo de petición y respuesta Prof. Manuel Blázquez Ochando
Formularios en lenguaje HTML 7 de Abril de Índice Generalidades Definición en HTML Elementos Formas de envío: métodos GET y POST Recepción y tratamiento.
JAVA. Introducción Que es java?  Código reusable  Multiplataforma.
Actividad 8 Equipo 3: o Gemma Cedillo Saucedo. o Alejandra Castillo Almazán. o Adriana Lara Mata. o Jorge Arregoytia García. o Aleida Villegas Rodríguez.
Ing. CIP Fabián Silva Alvarado
Servlets Roberto Moriyón. Servlets, I Objetos java, componentes web contenidas en un servidor (contenedor de servlets) que los reutiliza, que reciben.
Tecnologías para el desarrollo de aplicaciones Web
Ingeniero Anyelo Quintero
Servlets, JSP, JavaBEANS,JDBC
Java Server Faces.
Plataformas de Desarrollo de Software
Desarrollo de Aplicaciones Utilizando Java Edición Empresarial – JEE6
Sistemas Distribuidos basados en la web
Servicios Web. Servicios web Son programas con funcionalidad accesible a través de protocolo http que permiten la ejecución remota de métodos y funciones.
InfoPath Ventajas y Uso.
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
ASIGNACION DE LAS PARTES DE LA APLICACION DISTRIBUIDA EN JAVA PESENTA: LEVI MONROY MARTINEZ.
Servlets 18 de Marzo de Índice ¿Qué es un Servlet? ¿Cuándo y por qué usar Servlets? Estructura básica de un HttpServlet Servlet simple que genera.
J2EE – Java 2 Enterprise Edition
Por: Jorge Aguirre PUERTOS DE UN SERVIDOR WEB.  Un servidor web o servidor HTTP es un programa informático que procesa una aplicación del lado del servidor.
J2EE vs.Net. Integración de sistemas Integrar = Asimilar y agregar rápidamente gran cantidad de información de sistemas distintos Aspecto crítico No se.
Sistemas Cliente-Servidor Introducción. Sistemas cliente-servidor Servidor Cliente Petición Respuesta.
Unidad didáctica 6 Diseño de páginas Web.
Enterprise Java Beans. EJBs Beans gestionados por un contenedor del servidor de aplicaciones para gestionar el acceso a recursos (bases de datos, colas.
Aplicaciones Web M.C. Jorge Eduardo Ibarra Esquer
IS2Objetos Distribuidos - J2EE,RMI1 Ingeniería del software II Ingeniería Web.
Control de acceso en Java EE
Servlets 10 de Mayo de 2006.
IS2Objetos Distribuidos - J2EE,RMI1 Ingeniería del software II Ingeniería Web.
Los siguientes términos y acrónimos son un resumen de las tecnologías web actuales: ASP (Active Server Pages)  Páginas de servidor activas.  Tecnología.
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
Clase 5 Curso Microsoft.NETCurso Microsoft.NET I.S.F.T. N° 182I.S.F.T. N° 182.
Sun Microsystems. Los servlets son objetos que corren dentro del contexto de un contenedor de servlets y extienden su funcionalidad. También podrían correr.
Servidor web Alumna: María Verónica Mancheno Materia: Gestión de Información Web Profesor: José Medina Moreira.
 Claudia Jordan Idrovo.  Son los puntos de enganche para cada conexión de red que realizamos. El protocolo TCP (el utilizado en internet) identifica.
Características generales de un servicio Web.
Luis Ponce Cabello.  Primera Parte : JSF  Segunda Parte : Facelets  Tercera Parte : Icefaces.
Integrante: Mariana Alcalá Hdz María del Carmen Andrade G. Alondra E. García Mtz Joselyn Gpe García V. Antonio de Jesús Hdz R. Cristian Jesús Ruvalcaba.
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
1/11Departamento de Informática Tributaria AJAX Fundamentos básicos ( ) AJAX Fundamentos básicos ( )
1.  Tomcat es un contenedor web basado en el lenguaje Java que actúa como motor de servlets y JSPs.  Se ha convertido en la implementación de referencia.
 Tres tipos de aplicaciones ◦ Aplicaciones Web Java ◦ Objetos distribuidos EJBs ◦ Aplicaciones Empresariales.
Servicios Web-SOA Aula: Fomento 05/06/2006 a 08/05/2006.
Transcripción de la presentación:

Aplicaciones web

… HTTP

Aplicaciones con páginas estáticas Subdirectorio especial: \WEB-INF Fichero de configuración (opcional): \WEB-INF\web.xml Ficheros *.html fuera de WEB-INF El contenido de WEB-INF no es directamente accesible a través de http El contenido fuera de WEB-INF es directamente accesible a través de http

Aplicación con páginas estáticas: Ejemplo Hello WEB-INF web.xml Hello.html web SubDir Bye.html URLS:

Aplicación con páginas estáticas: Ejemplo, II Fichero de configuración web.xml: <web-app version=“3.0“ xmlns=" “ xmlns:xsi= " xsi:schemaLocation= " ">

Servidor de aplicaciones Administración: …\glassfish\bin\asadmin Arranque: asadmin> start-domain domain1 También automáticamente desde NetBeans Parada: asadmin> stop-domain domain1 URL: Entorno web de administración: Usuario: admin, Clave: adminadmin

Acceso a las aplicaciones web URLs de acceso a aplicaciones: –Cada aplicación tiene asociada una URL de acceso, formada por la URL del servidor se- guida de un identificador de la aplicación Ejemplo: Cada aplicación tiene asociada una o más páginas (o componentes) de inicio del directorio raíz, que se indican en web.xml: start.html

Aplicación con páginas estáticas: Despliegue Se despliega desde el entorno de admi- nistración del servidor de aplicaciones –Web applications  Deploy (seleccionar directorio, indicar nombre de la aplicación y ruta de acceso) La URL de acceso a una página es la del servidor seguida de la ruta de acceso de la aplicación y la de acceso a la página Ej:

Despliegue desde NetBeans Pulsar con el botón derecho del ratón sobre el proyecto Ejecutar “Deploy” o “Run” Automáticamente se compila el proyecto y se arranca el servidor si hace falta, se despliega el módulo, se arranca el navegador si hace falta y se hace la petición http correspondiente

Módulos web de presentación: Estructura Recursos web –Ficheros de contenidos estáticos (HTML, imágenes, …) –Componentes (programas generación dinámica de contenidos) Clases de utilidades (BBDD, …) Programas cliente (applets, JavaScript, …) Ficheros de configuración (XML) Directorios / /WEB-INF / /WEB-INF

Estructura de módulos web PÚBLICO PRIVADO

Módulos web de presentación: Formato alternativo Un módulo web puede estar formado por un fichero XXX.war que contiene un árbol de directorios, comprimido en formato Zip. Se despliega análogamente al caso de un árbol de directorios.

Aplicaciones web: Estructura Ficheros XXX.ear que contienen varios módulos web en formato war Los módulos web pueden ser de presen- tación o de servicios (programas que re- ciben peticiones de información o de eje- cución de acciones de otro módulo web) NetBeans gestiona la estructuración y despliegue de módulos y aplicaciones de manera transparente

Configuración de módulos web Asociación de componentes a URLs –Cada componente tiene asociado un alias y se pueden asociar alias a URLs. Ejemplo: el alias TStart puede corresponder al servlet servlets.TestStart.class o a la página TestStart.jsp y a la URL /TS le puede corresponder el alias TStart. Las URLs comienzan obligatoriamente con / y pueden ser patrones con * (como /TS/*).

Configuración de módulos web, II Cada aplicación tiene asociada una componente de inicio. –La componente de inicio se especifica mediante un camino de acceso (URL relativa) que comienza sin barra.

Configuración de módulos web: Ejemplo La aplicación se llama Prueba. La URL del servidor es :8080. El alias Comienzo corresponde al servlet con clase servlets.Start. El patrón de URL “/init/*” corresponde al servlet con alias Comienzo. La componente de inicio es “init/start.html”. Al acceder a el servidor muestra el contenido generado por el servlet con clase servlets.Start.

URLs Son las direcciones utilizadas para acceder a un recurso web Incluyen el protocolo, identificador del servidor (IP o nombre), puerto (opcional), nombre de la aplicación, contexto y parámetros Los parámetros se utilizan para enviar información del cliente al servidor

Tipos de peticiones Http Peticiones directas desde la barra del navegador. Peticiones indirectas a través de un enlace o botón en un formulario en la ventana del navegador. –GET: Inclusión de parámetros en la cabecera. –POST: Inclusión de parámetros en el cuerpo. También se utiliza para enviar información del cliente al servidor (ficheros, etc)

Tipos de peticiones http, II La URL asociada a una petición POST no contiene sus parámetros Recomendación de W3C: Utilizar peticiones Post si se va a producir un cambio en el estado de la aplicación. Motivación práctica: Si el resultado de la petición depende del contexto, no tiene sentido facilitar el guardar su URL como página preferida.

Peticiones a través de un formulario: Codificación HTML <FORM action=“ method=“post”> … Aspectos relevantes: Qué petición (URL) se hace al pulsar en el botón del formula- rio y cómo se especifica el formulario

Peticiones a través de un formulario: Ejemplo

Peticiones a través de un formulario: Codificación HTML, II SI <INPUT type=“radio” id=“si” name=“voto” value=“SI”/> NO <INPUT type=“radio” id=“no” name=“voto” VALUE=“NO”/>

Peticiones a través de un formulario: Tipos de inputs –TEXTCampo de texto (una línea) value: El texto tecleado –PASSWORDCampo: clave value: El texto tecleado –CHECKBOXItem seleccionable –RADIOSelección de un item en lista –SUBMITBotón de envío –RESETBotón de reinicio de formulario –FILESelección de fichero

Peticiones a través de un formulario: Menús y textos SELECT (Menú) Component_1 Component_2 TEXTAREA First line of initial text. Second line of initial text. Value: el texto tecleado

Ejercicios [STATIC] La URL UUU:8080/NombreYClub?nombre=XXX&club=YYY contesta con una página que dice “Hola XXX, Viva el YYY!” Desarrollar una página HTML estática que permita que el usuario teclee su nombre y elija un club entre una lista determinada y le conteste en los términos anteriores.

Aplicaciones en capas, I Capa cliente Capa web Capa negocio

Frameworks para aplicaciones en capas Java Enterprise Edition (Java EE 6) –Multiplataforma –Basado en el lenguaje Java –Extensivo y flexible, pero no simple Microsoft.NET –Plataforma Windows –Multilenguaje (C#, VB, C++ CLI, …) –Eficiente y simple, orientado a servicios

Aplicaciones en capas, II Capa cliente –Navegador, aplicación o servidor –Accede a un servidor haciendo peticiones –Puede tener un grado alto de interactividad (interfaz de usuario similar a las aplicaciones stand alone) mediante la utilización de un lenguaje de programación (Java, Javascript, Flash, …) y la conexión con el servidor (Ajax)

Aplicaciones en capas, III Capa Web (servidor) –Gestiona la interacción entre los clientes y la capa de negocio. –Tareas: 1.Generación dinámica de contenidos 2.Atención a los clientes, devolviéndoles los resultados enviados por la capa de negocio 3.Control del flujo de pantallas o páginas en el cliente 4.Mantenimiento del estado de los datos de las sesiones de usuario 5.Gestión de la lógica básica de la aplicación, manteniendo datos temporalmente en JavaBeans

Aplicaciones en capas, IV Tecnologías utilizadas en la capa web Servlets Clases Java que procesan peticiones y construyen respuestas JSP Plantillas de documentos con instrucciones Java para su generación JSF Etiquetas y extensiones para simplificar la definición de páginas JSP Reglas de navegación entre páginas STL Biblioteca de etiquetas que encapsulan funcionalidad de páginas JSP JBC Objetos que almacenan datos temporalmente para la aplicación

Arquitectura de la capa web

Integración de componentes web

Aplicaciones en capas, V Capa de negocio –Componentes que proporcionan la lógica de negocio de la aplicación –Tecnologías: EJB (Enterprise JavaBeans) JAX-WS (Java API for XML Web Services) Entidades de la API de persistencia Servicios Web (SOAP, …)

Aplicaciones en capas, VI Capa de sistemas de información empresarial (EIS) –Servidores de bases de datos –Sistemas de planificación de recursos –Mainframes –…

Aplicaciones en capas, VII Tecnologías utilizadas en la capa EIS JDBC (Java DataBase Conectivity) API de Persistencia Arquitectura de conexión J2EE JTA (Java Transaction API)

Otras tecnologías (.NET) ASP (Active Server Pages) ADO (ActiveX Data Objects) SOAP (Servicios Web)

Servidor de aplicaciones, I Proporciona los servicios de Java EE Alberga componentes de distintos tipos correspondientes a las capas de la aplicación, guardadas en contenedores Proporciona servicios a las componentes (atención de solicitudes, seguridad, concurrencia y gestión del ciclo de vida) Proporciona acceso a APIs como acceso por nombre, transacciones y correo electrónico

Servidor de aplicaciones, II: Contenedores Contenedor web: Gestiona el ciclo de vida de las componentes (Servlets, JSPs, …) y su acceso al contexto (sesión, …) Contenedor de clientes de la aplica- ción: Interfaz con aplicaciones cliente Contenedor de EJB: Interfaz con Enterprise beans Su objetivo es optimizar el rendimiento. Juegan el papel de caches sofisticadas