En principio cada aplicación web se encuentra aislada y es independiente de las otras.

Documentos relacionados
Hello World Ajax! con Eclipse

ISJu: Técnicas de Programación Cartilla Teórica-Práctica Instalación del "Eclipse IDE for Java EE Developers" y el servidor "Apache Tomcat"

Quickstart-Webapps-Spring

Aplicaciones Web (Curso 2015/2016)

Tutorial Web Dinámica con Servlets y JSP Sesion 3

Computación Web (Curso 2015/2016)

INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE COMPUTO

SERVLETS. Aplicaciones Distribuidas

Sistemas de Información 12/13 Servlets y JSPs (Java Server Pages)

Computación Web (Curso 2013/2014)

Aplicaciones Web con Servlets y JSP (I)

Curso de gráficos con Java y OpenFlashChart para aplicaciones web. Manual del alumno

INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO

Ejemplos de Servlet y JSP Web Application Development

Qué ofrece Autentia Real Business Solutions S.L?

JAVA WEB SERVICES. Realizado por: Diana Alfaro Página 1

Serialización de datos en C# en Binario, Soap y Xml

Conexión de Mysql con NetBeans

envía al browser. El browser despliega el archivo.

Clase Java que implementa un modelo de programación peticiónrespuesta. Puede usarse para procesar cualquier tipo de petición

Diseño Y Aplicaciones de Sistemas Distribuidos. Servlets. Joan Vila

Cada vez que la misma computadora solicita una página pg con un browser, junto con la solicitud el browser envía la cookie al servidor.

Servlets (I) Mario Muñoz Organero & Norberto Fernández Departamento de Ingeniería Telemática

Introducción a los servlets

DESARROLLO WEB EN ENTORNO SERVIDOR

Introducción n a Java EE: Servlets

Tema 7: Servidores Web (II) Contenidos

Java Servlets. Luis Fernando Llana Díaz. 17 de abril de Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid

Requisitos. Universidad ORT Arquitectura de Software

INSTALACIÓN JAVA DE SUN ORACLE

Servlets. Unidad: 4 Laboratorio de Programación. Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos

Práctica 4 PROGRAMACIÓN WEB CON SERVLETS Y JSP. 1. Introducción a JSP... 2

Tema 4: Servidores Web

Java 2 Enterprise Edition

Implementando nuestro primer servlet

JAVA WEB SERVICES. Realizado por: Diana Alfaro Complementado por: Carlos Sánchez Página 1

Spring MVC. Desarrollo de Aplicaciones Empresariales

NIVEL 16: ESTRUCTURAS N-ARIAS RECURSIVAS Aplicaciones Web, Html y Servlets. ISIS1206 Estructuras de Datos

INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE COMPUTÓ

Qué ofrece Autentia?

2015 CÁTEDRA DE LENGUAJE DE PROGRAMACIÓN JAVA

Sistemas de Información 12/13 Ejercicios Tecnologías Web

Curso Java Web (JSP's/Servlets)

USANDO SERVLETS EN UN SERVIDOR WEB RESIN

Servidores Web. Tema 4: Acceso a Páginas Web en ficheros. Output. GET /index.html. Server host. HTTP server: Apache, IIS SO Unix.

Escribir código HTML en los servlets es tedioso. que hay que utilizar las instrucciones print, println, etc. Es decir, HTML está dentro de java.

INTRODUCCIÓN N A LAS APLICACIONES WEB Y TECNOLOGÍA A JAVA

Contiene código HTML normal junto elementos especiales de JSP. Internamente, el servidor de aplicaciones las compilará a un servlet

Qué ofrece Autentia Real Business Solutions S.L?

Tema 3: Tecnologías Java distribuidas

Aplicaciones Cliente - Servidor

II Curso Online JAVA-J2EE

Figura 7-1 Enlace para instalar el servidor web Apache Jakarta Tomcat

(de documentos 09-JSP-Intro.pdf y 10-JSP-Scripting- Elements.pdf) Página 296

javax.servlet.genericservlet javax.servlet.http.httpservlet MiServlet

Web Tier en JAVA. Nicolás Troncoso Carrère. Valparaíso, ILI 258 Departamento de Informática Universidad Técnica Federico Santa María

Java EE JavaServer Pages (JSP)

Curso de Ajax con Java. Manual del alumno

Capitulo 7: Tecnologías de la Capa Media, Lógica del Negocio.

Servlets. Unidad: 4 Laboratorio de Programación. Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos

4.1 Tutorial de Servlets y JSPs

Unidad IV: Servlets. Comprender la estructura básica de los Servlets Crear servlets sencillos Presentar el ciclo de vida de un Servlet.

Pasarela de pagos de la Administración Pública Vasca V2. Integración con Sistemas BackEnd de Administraciones

Carrito de Compras con Servlet, Arreglos y Sesiones

Desarrollo de aplicaciones para Internet

JSP JDBC SALVADORES OLAIZOLA,

ESCUELA SUPERIOR DE INGENIERIA

Configurar NetBeans, Tomcat y un pool de conexiones a PostgreSQL

Arquitectura Web Multicapa. Tema 6.a: Arquitectura sistema en capas. Ventajas de los sistemas. distribuidos. Arquitectura software en capas

Programación con JDBC (Java DataBase Connectivity ), Servlets y JSP (Java Server Pages)

Pruebas unitarias JUnit

Servidores web. Mecánica de funcionamiento

Aplicaciones web con Tomcat y MySQL en Linux

Tema 6: Arquitectura Web Multicapa

(Dibujo de arquitectura de Ebay) Arquitectura software en capas. Arquitectura Web Multicapa. Tema 6: datos: ficheros o bbdd. 2. Capa Presentación:

EL CAMINO A LA CERTIFICACION CON SERVLETS Y JSP EL CAMINO A LA CERTIFICACION CON SERVLETS Y JSP SCWCD RAFAEL ALCOCER CALDERA.

Clase. geniería de la Computación. Departamento de Ciencias e Ing. Diego C. Martínez - DCIC-UNS

Seguridad de la aplicación para servlets y JSP (página activas java)

3 PROGRAMACIÓN WEB CON SERVLETS

Ejemplo integrador del capítulo 7

Desarrollo de Sistemas Software Basados en Servicios y Componentes

Framework 1. Web en Java. (solo aplicaciones en mantenimiento)

JavaBeans y JavaServer Pages: Guía rápida. Manuel Urueña

En en el netbeans (instalación J2EE) seleccionar la opción de Java Web al crear un nuevo proyecto y elegir WebApplication:

Àlex Salinas Tejedor. Desenvolupament web en entorn servidor

Introducción a las aplicaciones WEB

Curso de desarrollo web en entorno de servidor

PASO 1: Creamos un nuevo proyecto en NetBeans. Nos vamos a File y pulsamos sobre New Project

Servlets. 1. Introducción Características fundamentales Ventajas fundamentales... 2

Qué ofrece Autentia Real Business Solutions S.L?

Configuración de Tomcat para usar SSL

Capítulo IV. Implementación.

Configuración servidor Tomcat

TEMARIO. 4-Servlet Definición de servlet El Web Container y el ciclo de vida de los servlets El ciclo request- response.

Sistemas de Información

Servicios Telemáticos Avanzados

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010)

JSP Básico. Índice. 2 Traducción de los JSP a servlets Acciones Introducción a JSP... 2

Qué ofrece Autentia Real Business Solutions S.L?

Transcripción:

El ServletContext es uno de los objetos más utilizados de las aplicaciones web a la hora de compartir información entre los distintos componentes web como Servlets y JSP. Su funcionalidad esta orientada a almacenar claves/valores que sean comunes para toda la aplicación. En principio cada aplicación web se encuentra aislada y es independiente de las otras.

Sin embargo muchas veces la gente me pregunta si hay alguna forma de comunicar ambas aplicaciones a nivel de API de Java.

Java ServletContext y comunicación La respuesta es sí. La comunicación entre aplicaciones es posible a través de su ServletContext aunque no siempre es recomendable y depende siempre la configuración del Servidor de Aplicaciones. Vamos a ver un ejemplo partiendo de una aplicación web que contenga el siguiente fichero web.xml <?xml version="1.0" encoding="utf-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>web001</display-name> <context-param> <param-name>nombre</param-name> <param-value>cecilio</param-value> </context-param> </web-app> Para acceder al nombre utilizaremos un Servlet que obtiene una referencia al ServletContext y nos los imprime por pantalla. package com.arquitecturajava; import java.io.ioexception; import java.io.printwriter;

import javax.servlet.servletcontext; import javax.servlet.servletexception; import javax.servlet.annotation.webservlet; import javax.servlet.http.httpservlet; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse; @WebServlet("/Servlet001") public class Servlet001 extends HttpServlet { private static final long serialversionuid = 1L; protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter pw= response.getwriter(); ServletContext contexto=request.getservletcontext(); pw.println(contexto.getinitparameter("nombre")); pw.close(); } El resultado es el siguiente: Como vemos estamos en la aplicación Web001 y accedemos al Servlet001. Ahora bien cómo podemos hacer lo mismo desde otra aplicación?. El código a nivel de API es muy sencillo simplemente solicitaremos a la aplicación Web002 que acceda al contexto de

la Web001 vamos a verlo. package com.arquitecturajava; import java.io.ioexception; import java.io.printwriter; import javax.servlet.servletcontext; import javax.servlet.servletexception; import javax.servlet.annotation.webservlet; import javax.servlet.http.httpservlet; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse; /** * Servlet implementation class ServletRemoto */ @WebServlet("/ServletRemoto") public class ServletRemoto extends HttpServlet { private static final long serialversionuid = 1L; protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter pw= response.getwriter(); ServletContext contexto= request.getservletcontext(); ServletContext otrocontexto=contexto.getcontext("/web001"); otrocontexto.getinitparameter("nombre"); pw.println(otrocontexto.getinitparameter("nombre"));

pw.close(); } } El resultado será el siguiente que como vemos es otra aplicación: Para que nos funcione correctamente deberemos configurar alguna cosa especifica de nuestro servidor que permita llamadas entre contextos ya que de entrada pueden estar aislados. En el caso del tomcat vale ir al server.xml y añadir que las aplicaciones soportan crosscontext= true. <Context crosscontext="true" docbase="web001" path="/web001" reloadable="true" source="org.eclipse.jst.jee.server:web001"/> <Context crosscontext="true" docbase="web002" path="/web002" reloadable="true" source="org.eclipse.jst.jee.server:web002"/> Hay que tener claro que estas casuísticas deberían reducirse al mínimo para reducir el acomplamiento, pero a veces nos pueden ser útiles. Otros artículos relacionados: ServletContext,ServletContextListener, Servlet 3.0