4.3 Problemas con servlets y páginas JSP. Patrones

Tamaño: px
Comenzar la demostración a partir de la página:

Download "4.3 Problemas con servlets y páginas JSP. Patrones"

Transcripción

1 4.3 Problemas con servlets y páginas JSP. Patrones

2 Situación a la que queremos llegar Poder usar directamente herramientas de diseño de páginas web para implementar la vista Las actualizaciones al aspecto gráfico no deben provocar un re-arranque del servidor Separación de roles Informáticos Modelo, controlador y partes de la vista no relacionados con el aspecto gráfico Diseñadores gráficos o similares Implementación del aspecto gráfico de la aplicación Esta separación en muchos casos puede ser sólo ideal (depende de la cultura de la empresa), pero la idea es tender hacia ella

3 Son los Servlets la solución? Podemos usar directamente herramientas de diseño de páginas web? No Se pueden hacer actualizaciones al aspecto gráfico sin re-arrancar el servidor? No Es posible una separación de roles? Las personas que desarrollan el modelo no tienen porque ser las mismas que las que hacen los servlets Sin embargo, las personas que desarrollan los servlets necesitan conocimientos de programación

4 Es JSP la solución? Podemos usar directamente herramientas de diseño de páginas web? Sí Se pueden hacer actualizaciones al aspecto gráfico sin re-arrancar el servidor? Sí Es posible una separación de roles? Las personas que desarrollan el modelo no tienen porque ser las mismas que las que hacen las páginas JSP Sin embargo, las personas que desarrollan las páginas JSP necesitan conocimientos de programación para incrustar el código Java (scriptlets y expresiones)

5 Cuál es la solución? Una que permita construir páginas JSP sin código Java (o de otro lenguaje de programación) Cómo podemos conseguirlo? Con un buen diseño Model-View-Controller Usando el mecanismo de extensión de tags de JSP Permite implementar acciones a medida (custom actions) Paquete javax.servlet.jsp.tagext Podríamos implementar un buen número de acciones para eliminar una parte importante de los scriptlets y expresiones de las páginas JSP Un diseñador gráfico podría aprender a usarlas Al fin y al cabo, tienen el aspecto de los tags HTML (un nombre y atributos)

6 Problema 1: URL rewriting Para que una aplicación que use sesiones sea robusta, necesita aplicar URL rewriting a todas las URLs que genera o hace un sendredirect Ej.: Extracto de Portal2/MainPage.jsp <a href="<%= response.encodeurl("../index.jsp") %>"> Servlet and JSP tutorial main page</a> <br> <a href="<%= response.encodeurl("processlogout.jsp") %>">Logout</a> Sería más sencillo disponer de una acción que lo hiciese automáticamente <html:link page="../index.jsp">servlet and JSP tutorial main page </html:link> <br> <html:link page="processlogout.jsp">logout</html:link>

7 Problema 2: Mostrar formularios (1) Repasar Portal2/ShowLogin.jsp Necesidad de un scriptlet muy grande para recuperar posibles errores Necesidad de usar expresiones para insertar los posibles mensajes de errores Necesidad de aplicar URL rewriting en el atributo action del formulario Sería más sencillo disponer de acciones que ocultasen todo este código

8 Problema 2: Mostrar formularios (2) <html> <head> <title>portal-2 login form</title> </head> <body text="#000000" bgcolor="#ffffff"> <html:form action="processlogin.jsp"> <table width="100%" border="0" align="center" cellspacing="12"> <%-- Login name --%> <tr> <th align="right" width="50%">login name</th> <td align="left"> <html:text property="loginname" size="16" maxlength="16"/> <html:errors property="loginname"/> </td> </tr>

9 Problema 2: Mostrar formularios (3) <%-- Password --%> <tr> <th align="right" width="50%">password</th> <td align="left"> <html:password property="password" size="16" maxlength="16"/> <html:errors property="password"/> </td> </tr> <%-- Remember my password --%> <tr> <th align="right" width="50%"> Remember my password (cookies must be enabled) </th> <td align="left"> <html:checkbox property="remembermypassword"/> </td> </tr>

10 Problema 2: Mostrar formularios (y 4) <tr> <td width="50%"></td> <td align="left" width="50%"> <input type="submit" value="login"> </td> </tr> </table> </html:form> </body> </html>

11 Patrón View Helper Este tipo de acciones JSP a medida que estamos viendo (problemas 1 y 2), y que nos ayudan a generar la vista, corresponden a la aplicación del patrón View Helper (Core J2EE Patterns) Facilitan el acceso a objetos Java (en cualquiera de los cuatro ámbitos) Generan HTML, WML, etc. sin aspecto gráfico Ej.: Campos de entrada en formularios, URLs (para hacer más transparente el paso de parámetros, URL rewriting, etc.) Nunca deben generar HTML, WML, etc. centrado en aspecto gráfico Ejemplo de mala idea: tener una acción que imprime un objeto Java en una tabla Precisamente lo que queremos evitar es código Java mezclado con HTML, WML, etc.

12 Problema 3: Procesar peticiones (1) Las páginas JSP de procesamiento suelen tener el siguiente esquema (1.1) Recuperar los valores de los parámetros Directamente de la request Usando JavaBeans (1.2) Validar los parámetros En caso de tratarse del procesamiento de un formulario, si hay errores, se hace un forward al formulario con los errores insertados en la request En caso de que ocurra algún error inesperado => sendredirect a una página que indique error interno (1.3) Invocar una operación sobre un Business Delegate del modelo o una fachada del controlador Si se produce una excepción, mismo tratamiento que en la validación de parámetros

13 Problema 3: Procesar peticiones (2) (1.4) Hacer un sendredirect a otra página o generar una respuesta (1.4.1) sendredirect Ej.: En el procesamiento de un formulario de login (1.4.2) Generar una respuesta Variantes Ej.: En el procesamiento de una búsqueda En muchas situaciones reales el paso 1.3 se implementa sin hacer uso de Business Delegates y lanzando queries directamente contra la BD vía JDBC Modelo mezclado con la vista! Quizás sería mejor decir: modelo inexistente! Difícil de mantener en aplicaciones de tamaño medio y grande

14 Problema 3: Procesar peticiones (3) Análisis Páginas de procesamiento que son del tipo No generan aspecto gráfico Sólo contienen un scriptlet grande Páginas de procesamiento que son del tipo Contiene un scriptlet grande al principio La última parte de la página genera la respuesta HTML, WML, etc. Suelen hacer uso de scriptlets para iterar sobre los resultados devueltos por la operación del modelo y darles formato HTML, WML, etc. Ej.: Imprimir los resultados de una búsqueda en una tabla

15 Problema 3: Procesar peticiones (4) Cómo podemos eliminar el código Java en las páginas de tipo 1.4.1? Implementándolas como servlets (controlador) y no como páginas JSP Cómo podemos eliminar el código Java en las páginas de tipo 1.4.2? Implementándolas como un servlet (controlador) y una página JSP (vista) Servlet Ejecuta el código que antes iba en el scriptlet En caso de errores => forward a la página JSP que muestra el formulario (con errores insertados en la request) o sendredirect a una página de error interno En otro caso, deja el valor de retorno de la operación del Business Delegate en la request como atributo y hace un forward a la página JSP de visualización de resultados

16 Problema 3: Procesar peticiones (5) Cómo podemos eliminar el código Java en las páginas de tipo 1.4.2? (cont) Página JSP de visualización de resultados Recupera los resultados de la request con acciones JSP Hace uso de acciones JSP para iterar sobre los resultados de tipo Collection o similar

17 Problema 3: Procesar peticiones (6) El enfoque anterior requiere un servlet por cada petición que haya que procesar Si deseamos saber cuál es la siguiente URL a la que se salta tras invocar una petición de procesamiento, hay que examinar el servlet en cuestión Flujo de control difícil de seguir Si se necesita aplicar políticas globales a todos los servlets, es necesario programarlas en cada uno Ej.: Hacer log de cada petición que se recibe, imprimiendo la URL invocada, los nombres de los parámetros y sus valores

18 Problema 3: Procesar peticiones (7) Patrón Front Controller (Core J2EE Patterns) Emplea un solo servlet javax.servlet.http.httpservlet FrontController 0..n Action # doget # dopost + process doget llama a dopost (o alrevés) Action1... ActionN

19 Problema 3: Procesar peticiones (8) Patrón Front Controller (cont) Configuramos el servidor de aplicaciones para que las peticiones a URLs que terminen en.do (por ejemplo) se redirijan al servlet FrontController En WEB-INF/web.xml <servlet> <servlet-name>frontcontroller</servlet-name> <servlet-class>frontcontroller</servlet-class> </servlet> <servlet-mapping> <servlet-name>frontcontroller</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>

20 Problema 3: Procesar peticiones (9) Patrón Front Controller (cont) Ej.: Portal-2 Acciones: ProcessLoginAction y ProcessLogoutAction Funcionalmente equivalentes a Portal2/ProcessLogin.jsp y Portal2/ProcessLogout.jsp Las peticiones a las URLs Portal2/ProcessLogin.do y Portal2/ProcessLogout.do llegan al FrontController Cuando el FrontController arranca (init) Lee un fichero de configuración que especifica Portal2/ProcessLogin.do => Action = ProcessLoginAction, Success = /Portal2/MainPage.jsp, Input = /Portal2/ShowLogin.jsp Portal2/ProcessLogout.do => Action = ProcessLogoutAction, Success = /Index.jsp InternalError = /Portal2/InternalError.jsp Crea una instancia por cada acción existente

21 Problema 3: Procesar peticiones (10) Patrón Front Controller (cont) Cuando al FrontController le llega una petición, la pasa a la acción correspondiente El método process de la acción (1) recupera los valores de los parámetros, (2) invoca una operación sobre un Business Delegate o una fachada del controlador, (3) deja los resultados en la request, y (4) hace un forward o sendredirect a Success, Input o InternalError La clase base Action (u otra en un framework más complejo) le facilita el hacer el forward/sendredirect Usa nombre lógicos (Success, Input o InternalError) y no los nombres de las URLs reales El sendredirect aplica URL rewriting automáticamente El fichero de configuración deja claro el flujo de control

22 Problema 3: Procesar peticiones (y 11) Si quisiésemos aplicar una política global (ej.: trazar peticiones en un log para depuración) a todas las acciones o un subconjunto de ellas doget/dopost (FrontController) pueden hacerlo antes de llamar a la acción También puede hacerlo la clase base Action O aún mejor, podemos aplicar Chain Of Responsability en doget/dopost (o en la clase base Action) antes y/o después de ejecutar la acción Cadena de filtros de pre-procesamiento Cadena de filtros de post-procesamiento Core J2EE Patterns llama Intercepting Filter a este patrón

23 Otros problemas Hay que tener cuidado cuando se escribe el valor de un atributo de un objeto Java en el HTML generado Podría contener caracteres especiales para HTML: <, >, ', " y & Es preciso convertirlos a referencias internas: &lt, &gt, &#39, &#34 y & En los ejemplos del tutorial de servlet no se trata este caso Ej.: Elegir <hola> como nombre de login y observar el valor que imprime MainPage.jsp Y si queremos internacionalizar la aplicación? Ej.: que el usuario pueda elegir el idioma: español, gallego, inglés, etc. Problema: en los ejemplos que hemos visto los mensajes están dentro de las páginas JSP Y más problemas, y más problemas, y más problemas...

24 Conclusión (1) Necesitamos un framework que nos proporcione Un servlet FrontController y clases relacionadas Un buen número de acciones JSP a medida (custom tags) que actúen como View Helpers para Facilitar la construcción de las páginas que muestran formularios (campos de entrada y errores) Imprimir URLs (con URL rewriting automático) Acceso a objetos Java en cualquiera de los posibles ámbitos (request, session, page y application) Imprimir el valor de atributos de objetos Java Iterar sobre objetos de tipo Collection o similar Soporte para internacionalización Etc.

25 Conclusión (2) Con este framework una aplicación web tendrá el siguiente aspecto Modelo Conjunto de clases que implementan la lógica de negocio Independiente de la vista Controlador Vista Servlet FrontController y clases acción Desacopla la vista del modelo Páginas JSP sin código Java Usan muchas acciones JSP a medida (la mayor parte proporcionados por el framework)

26 Conclusión (y 3) JSTL (JSP Standard Tag Library) Librería estándar de tags (acciones) JSP Apache Struts Framework MVC Librería de tags JSP JSTL es una alternativa estándar para algunos de los tags de Struts, pero no para otros (ej.: soporte para formularios)

Diseño de la capa de presentación. Aplicaciones Distribuidas

Diseño de la capa de presentación. Aplicaciones Distribuidas Diseño de la capa de presentación Aplicaciones Distribuidas Contenido Motivación Diseño Capa Presentación. Arquitectura Modelo/Vista/Controlador. Controlador. Vista. Control peticiones duplicadas. 2 Motivación

Más detalles

Introducción (1) En una aplicación web, especialmente en Internet, los cambios a la interfaz gráfica son muy frecuentes

Introducción (1) En una aplicación web, especialmente en Internet, los cambios a la interfaz gráfica son muy frecuentes 4.2 Tutorial de JSP Introducción (1) Situación en el apartado anterior: el texto generado para el aspecto (vista) de la interfaz gráfica (HTML, WML, etc.) está mezclado con código Java No es posible usar

Más detalles

Departamento de Lenguajes y Sistemas Informáticos

Departamento de Lenguajes y Sistemas Informáticos Departamento de Lenguajes escuela técnica superior de ingeniería informática Grupo de Ingeniería a del Software Febrero 2007 Versión original: Autor (mes 200?) Última revisión: Autor (mes 200?); descripción

Más detalles

Proyecto de fin de Carrera 2013/2014. Autor: Miguel Souto Bartolomé Consultor: Óscar Escudero Sánchez

Proyecto de fin de Carrera 2013/2014. Autor: Miguel Souto Bartolomé Consultor: Óscar Escudero Sánchez Proyecto de fin de Carrera 2013/2014 Autor: Miguel Souto Bartolomé Consultor: Óscar Escudero Sánchez Índice: 1. Introducción 1. Resumen ejecutivo 2. Objetivos 2. Patrones 1. Patrones de aplicaciones web

Más detalles

Java web: servlets, Jsp, Jstl, Struts & Ajax

Java web: servlets, Jsp, Jstl, Struts & Ajax Java web: servlets, Jsp, Jstl, Struts & Ajax Java Web: Servlets, JSP, JSTL, Struts & AJAX Aprende a manejar la tecnología web de Java para el desarrollo de aplicaciones empresariales utilizada principalmente

Más detalles

Struts. Sesión 1. Introducción a Struts: el controlador y las acciones. Especialista Universitario Java Enterprise

Struts. Sesión 1. Introducción a Struts: el controlador y las acciones. Especialista Universitario Java Enterprise Struts Sesión 1. Introducción a Struts: el controlador y las acciones 2010-2011 Depto. Ciencia de la Computación e IA Indice Introducción a Struts y a MVC Instalación de Struts El ciclo de control en Struts

Más detalles

Ingeniería de Aplicaciones Web

Ingeniería de Aplicaciones Web Ingeniería de Aplicaciones Web Diego C. Martínez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Frameworks Framework Unused Library Classes Framework library Framework

Más detalles

DISEÑO E IMPLEMENTACIÓN DE APLICACIONES EMPRESARIALES CON MOVILIDAD. 1 OBJETIVOS...1

DISEÑO E IMPLEMENTACIÓN DE APLICACIONES EMPRESARIALES CON MOVILIDAD. 1 OBJETIVOS...1 ÍNDICE DE CONTENIDOS 1 OBJETIVOS...1 1.1 ESTUDIO DE TECNOLOGÍAS EXISTENTES PARA EL DESARROLLO DE APLICACIONES EMPRESARIALES CON MOVILIDAD... 3 1.2 COMPARATIVA DE TECNOLOGÍAS EXISTENTES Y ELECCIÓN DE UNA

Más detalles

APLICACIONES WEB J2EE - JSP

APLICACIONES WEB J2EE - JSP APLICACIONES WEB J2EE - JSP Objetivos Que el alumno pueda: Comprender la tecnología de los JSP Dar a conocer los principales tag de la biblioteca de JSP Brindar ejemplos concretos del uso de JSP 2 1 JAVA

Más detalles

Diseño e implementación de un framework de presentación

Diseño e implementación de un framework de presentación Diseño e implementación de un framework de presentación Para aplicaciones Web Thin Client en Java EE PFC Ingeniería Informática 2º Ciclo Alumno: Alejandro Marmelo Insua Consultor: Óscar Escudero Sánchez

Más detalles

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

TEMARIO. 4-Servlet Definición de servlet El Web Container y el ciclo de vida de los servlets El ciclo request- response. TEMARIO 1-Introducción Entorno de Desarrollo Integrado ( que es, para que nos sirve, distintos tipos) Presentación del Netbeans (descarga, instalación, aspectos fundamentales.) Principales Servidores de

Más detalles

Spring MVC. Desarrollo de Aplicaciones Empresariales

Spring MVC. Desarrollo de Aplicaciones Empresariales Spring MVC Desarrollo de Aplicaciones Empresariales 2014-1 Spring MVC Spring MVC Es una parte de Spring que nos facilita la implementación de la vista y el controlador de una aplicación, y la integración

Más detalles

SÍLABO POR OBJETIVOS CURSO: PROGRAMACIÓN DISTRIBUIDA Y WEB DOCENTE: Ing. JUAN JOSE ARAMBULO AQUIJES

SÍLABO POR OBJETIVOS CURSO: PROGRAMACIÓN DISTRIBUIDA Y WEB DOCENTE: Ing. JUAN JOSE ARAMBULO AQUIJES SÍLABO POR OBJETIVOS CURSO: PROGRAMACIÓN DISTRIBUIDA Y WEB DOCENTE: Ing. JUAN JOSE ARAMBULO AQUIJES I. DATOS GENERALES ASIGNATURA: PROGRAMACIÓN DISTRIBUIDA Y WEB CÓDIGO: 033304451 ESCUELA: INGENIERÍA INFORMÁTICA

Más detalles

Java Web J2EE con JSP

Java Web J2EE con JSP Java Web J2EE con JSP Programa de Estudio Java Web J2EE con JSP Aprende a manejar la tecnología web de Java para el desarrollo de aplicaciones empresariales utilizada principalmente para comercio electrónico

Más detalles

Java Web J2EE con JSP

Java Web J2EE con JSP Java Web J2EE con JSP Programa de Estudio Java Web J2EE con JSP Aprende a manejar la tecnología web de Java para el desarrollo de aplicaciones empresariales utilizada principalmente para comercio electrónico

Más detalles

Java Web J2EE con JSP

Java Web J2EE con JSP Java Web J2EE con JSP Programa de Estudio Java Web J2EE con JSP Aprende a manejar la tecnología web de Java para el desarrollo de aplicaciones empresariales utilizada principalmente para comercio electrónico

Más detalles

Daniel Rodríguez Simó Tutor: Óscar Escudero Sánchez

Daniel Rodríguez Simó Tutor: Óscar Escudero Sánchez Autor: Daniel Rodríguez Simó Tutor: Óscar Escudero Sánchez UOC, 14 de Enero de 2013 Índice Objetivos Planificación. Justificación. Patrones de Diseño: Patrón MVC. Estudio/Comparativa de Frameworks actuales.

Más detalles

Curso Desarrollo Java Web con JSP, Servlets y el MVC

Curso Desarrollo Java Web con JSP, Servlets y el MVC Curso Desarrollo Java Web con JSP, Servlets y el MVC Objetivos: En este curso práctico aprenderás a desarrollar páginas JSP bajo el modelo MVC. Entenderás con desarrollar aplicaciones Web en Java bajo

Más detalles

Diseño e implementación de un marco de trabajo de presentación para aplicación J2EE

Diseño e implementación de un marco de trabajo de presentación para aplicación J2EE Diseño e implementación de un marco de trabajo de presentación para Felipe Benavente Cabrera Ingeniería en Informática Josep Maria Camps Riba UOC - Este trabajo está sujeto excepto que se indique lo contrario

Más detalles

Arquitectura Java Web. Ing. Juan Zevallos Valle

Arquitectura Java Web. Ing. Juan Zevallos Valle Arquitectura Java Web Ing. Juan Zevallos Valle 1 Objetivos Al final de la sesión usted debe ser capaz de: Conocer el modelo MVC utilizado en JAVA. Crear la vista usando paginas JSP Crear Servlets para

Más detalles

Struts. Sesión 2: La vista en Struts. ActionForms y taglibs propias. Especialista Universitario Java Enterprise

Struts. Sesión 2: La vista en Struts. ActionForms y taglibs propias. Especialista Universitario Java Enterprise Sesión 2: La vista en. ActionForms y taglibs propias Indice ActionForms. Ciclo de vida Usar ActionForms Las taglibs de. HTML y HTML-EL ActionForms Normalmente la acción toma los parámetros directamente

Más detalles

Sistemas Informáticos del Valle

Sistemas Informáticos del Valle CARRERA DE CERTIFICACION OCE CON JAVA EE 6 Java EE 6: Develop Web Components with Servlets & JSPs Examen Java EE 6 Web Component Developer Certified Expert 1Z0-899 (OCE) CONTENIDO Introducción al Curso

Más detalles

Tecnología para la. Web (MVC)

Tecnología para la. Web (MVC) Tecnología para la Construcción de Aplicaciones Web (MVC) Dr. Víctor J. Sosa vjsosa@tamps.cinvestav.mx Información sintetizada del curso: Introducción a los servicios y servidores de información en Internet

Más detalles

Tema 4: Tecnologías Web Java

Tema 4: Tecnologías Web Java Tema 4: Tecnologías Web Java Introducción Aplicación web Aplicación que corre en al menos un servidor y a la que el usuario accede desde un cliente de propósito general (ej.: navegador en un PC, teléfono

Más detalles

Presentación del Curso Presencial. Programación Web con Java J2EE

Presentación del Curso Presencial. Programación Web con Java J2EE Presentación del Curso Presencial Programación Web con Java J2EE Tabla de contenido Presentación del curso... 3 Objetivos de aprendizaje... 4 Contenidos del curso... 5 Competencias previas... 6 Recursos...

Más detalles

Ingeniería de Aplicaciones Web

Ingeniería de Aplicaciones Web Ingeniería de Aplicaciones Web Diego C. Martínez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Tecnologías web cliente servidor Arquitecturas Web cliente servidor

Más detalles

MVC (Model-View-Controller)

MVC (Model-View-Controller) MVC (Model-View-Controller) (...o la forma de traer orden al caos...) (BORRADOR) Universidad de los Andes Demián Gutierrez Diciembre 2010 1 MVC: Modelo Vista Controlador? Desarrollado / Ideado originalmente

Más detalles

Spring MVC Configuración (I)

Spring MVC Configuración (I) Debido a la explosión de las aplicaciones móviles cada día nos encontramos con una mayor necesidad de utilizar frameworks web que generen paginas HTML sencillas de tal forma que luego puedan decorarse

Más detalles

Oracle 10g: Creación de Aplicaciones J2EE

Oracle 10g: Creación de Aplicaciones J2EE Oracle University Contacte con nosotros: 902 302 302 Oracle 10g: Creación de Aplicaciones J2EE Duración: 5 Días Lo que aprenderá Este curso enseña a los desarrolladores a crear aplicaciones J2EE mediante

Más detalles

3.3 Casos de estudio

3.3 Casos de estudio 3.3 Casos de estudio Introducción Objetivo Estudiar casos de estudio que ilustren escenarios típicos de aplicación de XML Indicar las APIs apropiadas en cada caso Casos de estudio Configuración de aplicaciones

Más detalles

Ficha Técnica. Categoría. Contenido del Pack. Sinopsis. Programación. - 2 Manual Teórico - 1 Cuaderno de Ejercicios - 1 CDROM

Ficha Técnica. Categoría. Contenido del Pack. Sinopsis. Programación. - 2 Manual Teórico - 1 Cuaderno de Ejercicios - 1 CDROM Ficha Técnica Categoría Programación Contenido del Pack - 2 Manual Teórico - 1 Cuaderno de Ejercicios - 1 CDROM Sinopsis Java fue desarrollado por la compañía Sun Microsystems como una tecnología capaz

Más detalles

Programador de Aplicaciones Web

Programador de Aplicaciones Web Programador de Aplicaciones Web Información del examen: Número de examen: 1Z0-899. Certificación Asociada: Oracle Certified Expert, Java Platform, EE 6 Web Component Developer. Versión del producto: Java

Más detalles

Evaluación de los aprendizajes Elabora un cuadro comparativo con las principales características del lenguaje de programación Java.

Evaluación de los aprendizajes Elabora un cuadro comparativo con las principales características del lenguaje de programación Java. NÚCLEO: Núcleo Sector Comercio y Servicios. SUBSECTOR: Informática y comunicación. Nombre del Módulo: Programación para Ambiente WEB total: 120 horas Objetivo General: Aplicar los conocimientos teóricos

Más detalles

Diseño e implementación de un framework de presentación

Diseño e implementación de un framework de presentación Diseño e implementación de un framework de presentación Enrique Mengíbar Vázquez Ingeniería de Informática, 2.º ciclo Director: Óscar Escudero Sánchez Universitat Oberta de Catalunya Barcelona, enero de

Más detalles

Curso JAVA EE 7 2016

Curso JAVA EE 7 2016 Curso JAVA EE 7 2016 Curso de Java EE 7 PC CARRIER 29 de marzo de 2016 Autor: Marc Revenga Esquinas Curso JAVA EE 7 2016 Curso de Java EE 7 Clase 1. Aplicaciones web Java EE. Configuración del servidor

Más detalles

apa de presentación: JSP Copyright Universidad de Alicante JSP básico 1 Capa de presentación: JSP Sesión 1: JSP Básico

apa de presentación: JSP Copyright Universidad de Alicante JSP básico 1 Capa de presentación: JSP Sesión 1: JSP Básico Especialista en Aplicaciones y Servicios Web con Java Enterprise apa de presentación: JSP Copyright 2003-2004 Universidad de Alicante JSP básico 1 Capa de presentación: JSP Sesión 1: JSP Básico apa de

Más detalles

Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts

Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts Temario Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts Abril 2007 1. Introducción Se describe a continuación de forma detallada el programa del curso Desarrollo de Aplicaciones Web con Java: J2EE

Más detalles

Una página JSP es simplemente una página web con elementos JSP. Todo en la página no son elementos JSP, el resto se denomina plantilla de texto.

Una página JSP es simplemente una página web con elementos JSP. Todo en la página no son elementos JSP, el resto se denomina plantilla de texto. 2.6.1. Introducción. JSP es una tecnología Java para el desarrollo de aplicaciones Web basada en los servlet. Se puede decir que los servlets y Java Server Pages (JSPs) son dos métodos de creación de páginas

Más detalles

Introducción n a Java EE: Servlets

Introducción n a Java EE: Servlets Introducción n a Java EE: Servlets Departamento de Lenguajes escuela técnica superior de ingeniería informática Versión original: Amador Durán y Ramón Medel marzo 2007 Tiempo: 1h Grupo de Ingeniería a

Más detalles

Computación Web (Curso 2013/2014)

Computación Web (Curso 2013/2014) Aplicaciones Web con Servlets y JSP (II) Computación Web (Curso 2013/2014) Jesús Arias Fisteus // jaf@it.uc3m.es Aplicaciones Web con Servlets y JSP (II) p. 1 Java Server Pages (JSP) Aplicaciones Web con

Más detalles

07 Java EE Tarea 7. Laboratorio de proyectos de tecnologías de la información III Prof. Emmanuel Oropeza Gonzalez

07 Java EE Tarea 7. Laboratorio de proyectos de tecnologías de la información III Prof. Emmanuel Oropeza Gonzalez Instituto Politécnico Nacional Centro de Estudios Científicos y Tecnológicos 9 Laboratorio de proyectos de tecnologías de la información III Prof. Emmanuel Oropeza Gonzalez 07 Java EE Tarea 7 http://coatl.cecyt9.ipn.mx/eoropeza/home.html

Más detalles

Índice de Figuras 160

Índice de Figuras 160 Índice de Figuras 160 Índice de Figuras Figura 1.1: Diagrama Entidad Relación.. 11 Figura 1.2: Diagrama Jerárquico Funcional... 12 Figura 1.3: Diagrama de Flujo de Datos.... 13 Figura 1.4: Almacenamiento

Más detalles

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

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Java Server Pages (JSP) Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Jesús Arias Fisteus jaf@it.uc3m.es Java Server Pages (JSP) p. 1 Introducción Un servlet no resulta adecuado para presentación

Más detalles

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

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Java Server Pages (JSP) Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Jesús Arias Fisteus jaf@it.uc3m.es Java Server Pages (JSP) p. 1 Introducción Un servlet no resulta adecuado para presentación

Más detalles

ESPECIALISTA EN TECNOLOGIAS JAVA

ESPECIALISTA EN TECNOLOGIAS JAVA ESPECIALISTA EN TECNOLOGIAS JAVA Java Standard Edition Java Enterprise Edition Java Server Face Framework JSF MATERIAS Java - Framework Spring Java Framework Hibernate Java Enlace framework Progr. para

Más detalles

Aplicaciones Web con Servlets y JSP (II)

Aplicaciones Web con Servlets y JSP (II) Aplicaciones Web con Servlets y JSP (II) Jesús Arias Fisteus Aplicaciones Web (2017/18) Aplicaciones Web (2017/18) Aplicaciones Web con Servlets y JSP (II) 1 Parte I Java Server Pages (JSP) Aplicaciones

Más detalles

INFORMACIÓN SOBRE CURSOS BONIFICABLES

INFORMACIÓN SOBRE CURSOS BONIFICABLES INFORMACIÓN SOBRE CURSOS BONIFICABLES CURSO DE JAVA WEB DURACIÓN: 50 horas PRECIO: 375 euros OBJETIVOS: Aprende el ciclo completo de desarrollo y despliegue de una aplicación web utilizando: Servlets,

Más detalles

DIPLOMATURA DESARROLLO DE APLICACIONES JAVA

DIPLOMATURA DESARROLLO DE APLICACIONES JAVA DIPLOMATURA DESARROLLO DE APLICACIONES JAVA Contenidos MÓDULO UNO: Características del Lenguaje. OOP Reconocer las características del lenguaje Java y sus componentes. Distinguir la similitudes y diferencias

Más detalles

Programación Web con Python

Programación Web con Python Programación Web con Python Marcelo Schiavone Carlos Taffernaberry Temario Introducción Python Framework para Python Realizando aplicaciones Cheetah Python SQLObject IDEs Ejemplo de uso Conclusiones Introducción

Más detalles

FUNCIONAMIENTO: FUNCIONALIDAD

FUNCIONAMIENTO: FUNCIONALIDAD STRUTS Qué Es? Es un framework que implementa el patrón de arquitectura MVC en Java. El patrón de arquitectura MVC (Model-View-Controller) es un patrón que define la organización independiente del Model

Más detalles

SERVLETS. Aplicaciones Distribuidas

SERVLETS. Aplicaciones Distribuidas SERVLETS Aplicaciones Distribuidas Contenido Definición. Framework Servlet. Ciclo de vida. Ejemplo. Procesamiento Petición. Generación de la Respuesta. Sesiones. Cookies. Colaboración entre servlets. Otros

Más detalles

MVC(Modelo Vista - Controlador)

MVC(Modelo Vista - Controlador) CakePHP Qué es un framework? Un framework es un ambiente universal y reusable de software, que provee de funcionalidades particulares como parte de una plataforma mas grande de software para facilitar

Más detalles

Aplicaciones Web con Servlets y JSP (II)

Aplicaciones Web con Servlets y JSP (II) Aplicaciones Web con Servlets y JSP (II) Jesús Arias Fisteus Computación Web (2016/17) Computación Web (2016/17) Aplicaciones Web con Servlets y JSP (II) 1 Parte I Java Server Pages (JSP) Computación Web

Más detalles

Implementación del patrón Modelo-Vista-Controlador Utilizando Java Struts 2

Implementación del patrón Modelo-Vista-Controlador Utilizando Java Struts 2 Implementación del patrón Modelo-Vista-Controlador Utilizando Java Struts 2 Ing. Israel Ortega Cuevas Universidad Nacional Autónoma de México Dirección General de Personal Dirección de Sistemas Qué es

Más detalles

Tema 3: Diseño de la capa de presentación

Tema 3: Diseño de la capa de presentación escuela técnica superior de ingeniería informática Tema 3: Diseño de la capa de presentación Departamento de Lenguajes y Sistemas Informáticos Ingeniería del Software de Gestión III Índice Introducción

Más detalles

JAVA WEB 1er Nivel Servlet + JSP + JDBC + Sesiones

JAVA WEB 1er Nivel Servlet + JSP + JDBC + Sesiones JAVA WEB 1 er Nivel Servlet + JSP + JDBC + Sesiones En vivo y en directo usando el internet 1 sesión por semana 6 sesiones en total Primera sesión: Temas Descargar e instalar del servidor Tomcat Qué es

Más detalles

FACULTAD DE INGENIERÍA Y ARQUITECTURA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

FACULTAD DE INGENIERÍA Y ARQUITECTURA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA FACULTAD DE INGENIERÍA Y ARQUITECTURA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA I. DATOS GENERALES PLATAFORMA WEB DE SERVICIO MÚLTIPLE 1.0 Unidad Académica : Ingeniería de Sistemas e

Más detalles

Tema 3: Diseño de la capa de presentación

Tema 3: Diseño de la capa de presentación escuela técnica superior de ingeniería informática Tema 3: Diseño de la capa de presentación Departamento de Lenguajes y Sistemas Informáticos Ingeniería del Software de Gestión III Índice Introducción

Más detalles

Experto Universitario Java Enterprise Spring

Experto Universitario Java Enterprise Spring Spring Sesión 3: Spring MVC Indice Procesamiento de una petición Configuración básica Caso 1: petición sin entrada de datos Caso 2: petición con datos de entrada y validación 2 Procesamiento de una petición

Más detalles

Lógica en páginas JSP (I)

Lógica en páginas JSP (I) JSP (II) Mario Muñoz Organero & Norberto Fernández* Departamento de Ingeniería Telemática http://www.it.uc3m.es/mario http://www.it.uc3m.es/berto (*) Agradecimientos a Florina Almenárez en cuyo material

Más detalles

4.1 Tutorial de Servlets y JSPs

4.1 Tutorial de Servlets y JSPs 4.1 Tutorial de Servlets y JSPs Índice Introducción Framework de Servlets JSPs Ejemplo pojo-servjsptutorial Empaquetado de una aplicación Web Ficheros WAR y web.xml Frameworks POJO para interfaz Web Objetivo

Más detalles

Desarrollo Web. Parte 2 Edición Taller de Programación

Desarrollo Web. Parte 2 Edición Taller de Programación Desarrollo Web Parte 2 Edición 2018 Taller de Programación www.fing.edu.uy/inco/cursos/tprog tprog@fing.edu.uy Temario MVC con JSP y Servlet CSS DOM JavaScript jquery AJAX Bootstrap Demo MVC con JSP y

Más detalles

Programa Regular. Vázquez Alejandro. Jefe de TP simple.

Programa Regular. Vázquez Alejandro. Jefe de TP simple. Programa Regular Asignatura: Aplicación Java sobre Web. Carrera/s: Ingeniería en Informática. Ciclo Lectivo: 2017. Docente/s: Morales, Martín. Coordinador. Vázquez Alejandro. Jefe de TP simple. Carga horaria

Más detalles

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP Titulación acredidatada por la Comisión Internacional de Formación de la UNESCO Experto en Desarrollo de Componentes Web con Tecnología

Más detalles

Aplicaciones Web (Curso 2015/2016)

Aplicaciones Web (Curso 2015/2016) Aplicaciones Web con Servlets y JSP (II) Aplicaciones Web (Curso 2015/2016) Jesús Arias Fisteus // jaf@it.uc3m.es Aplicaciones Web con Servlets y JSP (II) p. 1 Java Server Pages (JSP) Aplicaciones Web

Más detalles

BASES DE DATOS AVANZADAS. Facultad de Estadística e Informática

BASES DE DATOS AVANZADAS. Facultad de Estadística e Informática BASES DE DATOS AVANZADAS Facultad de Estadística e Informática MVC Clase 14 MODEL VIEW CONTROLLER Qué es MVC? Patrón de arquitectura de software que separa el modelo, la interfaz de usuario y el control

Más detalles

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP Titulación acredidatada por la Comisión Internacional de Formación de la UNESCO Experto en Desarrollo de Componentes Web con Tecnología

Más detalles

Spring. Sesión 5: Spring MVC (II) Validación e internacionalización

Spring. Sesión 5: Spring MVC (II) Validación e internacionalización Spring Sesión 5: Spring MVC (II) Validación e internacionalización 1 Indice Validación Validación en Spring 2.x Validación en Spring 3 (JSR303) Restricciones predefinidas Validación de restricciones con

Más detalles

Aplicaciones Web (Curso 2014/2015)

Aplicaciones Web (Curso 2014/2015) Aplicaciones Web con Servlets y JSP (II) Aplicaciones Web (Curso 2014/2015) Jesús Arias Fisteus // jaf@it.uc3m.es Aplicaciones Web con Servlets y JSP (II) p. 1 Java Server Pages (JSP) Aplicaciones Web

Más detalles

Diego Seco Material adaptado de: Fernando Bellas Universidade da Coruña Desarrollo de Aplicaciones Empresariales

Diego Seco Material adaptado de: Fernando Bellas Universidade da Coruña Desarrollo de Aplicaciones Empresariales Diego Seco Material adaptado de: Fernando Bellas fbellas@udc.es Universidade da Coruña 2014-1 Desarrollo de Aplicaciones Empresariales Ejemplo Arquitectura con capa modelo local Arquitectura con capa modelo

Más detalles

Ejercicios de JSP Básico

Ejercicios de JSP Básico Índice 1 Conversor JSP...2 2 Contador de visitas...2 3 Chat con JSPs...3 4 Identificador del usuario (*)...4 1. Conversor JSP Crear una versión JSP de la aplicación conversor que teníais en el tema de

Más detalles

Estudiaremos desde los fundamentos hasta conceptos más avanzados de la tecnología JSF.

Estudiaremos desde los fundamentos hasta conceptos más avanzados de la tecnología JSF. Este curso está dirigido a gente interesada en el desarrollo de aplicaciones JEE con JSF. Este framework permite agilizar y simplificar en gran medida el desarrollo de aplicaciones Web Java. Estudiaremos

Más detalles

Diseño e Implementación con J2EE

Diseño e Implementación con J2EE Diseño e Implementación con J2EE Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones (TIC) Universidad de A Coruña http://www.tic.udc.es/~fbellas fbellas@udc.es Objetivos

Más detalles

Struts [parte I]

Struts [parte I] Struts [parte I] Módulo 1 Introducción a Struts Qué es Struts? Marco de trabajo MVC de Apache para la tecnología Java EE Marco de trabajo (framework): extensión de un lenguaje por medio de una jerarquía

Más detalles

Lección 1 Introducción a Struts. www.globalmentoring.com.mx uacosta@globalmentoring.com.mx

Lección 1 Introducción a Struts. www.globalmentoring.com.mx uacosta@globalmentoring.com.mx Lección 1 Introducción a Struts www.globalmentoring.com.mx uacosta@globalmentoring.com.mx Lección 1. Introducción a Struts Lección 1. Introducción a Struts Un framework es un conjunto de clases que nos

Más detalles

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

Sistemas de Información 12/13 Servlets y JSPs (Java Server Pages) 12/13 Servlets y JSPs (Java Server Pages) Departamento Informática e Ingeniería de Sistemas Universidad de Zaragoza (raqueltl@unizar.es) " Guión Introducción Servlets Introducción Clases e interfaces del

Más detalles

Java Struts Framework. Juan Fco. Rodríguez Hervella

Java Struts Framework. Juan Fco. Rodríguez Hervella Java Struts Framework Juan Fco. Rodríguez Hervella Indice Introducción Struts Framework Ejemplo Conclusiones. Título 2 Introducción Entorno para la construcción de aplicaciones web. Basado en el patrón

Más detalles

Ejercicios de MVC en Spring

Ejercicios de MVC en Spring Índice 1 Configurar el proyecto para Spring MVC (0.5 puntos)...2 2 MVC sin procesamiento de datos de entrada (1 punto)... 3 3 MVC con procesamiento de datos de entrada (1 punto)... 3 4 Taglibs de Spring

Más detalles

Introducción a JSF con NetBeans

Introducción a JSF con NetBeans Introducción a JSF con NetBeans Créditos Yann Arthur Nicolas yannart@gmail.com www.merlinsource.com Objetivo Crear una primera aplicacion con JSF utilizando los tags para JSP y un ManagedBean, entender

Más detalles

Capítulo 5. Java Server Pages

Capítulo 5. Java Server Pages Capítulo 5. Java Server Pages 5.1 Introducción JSP es el acrónimo de Java Server Pages, y es una tecnología orientada a crear páginas Web con programación en Java. Con JSP podemos crear aplicaciones Web

Más detalles

11 de enero PFC. Proyecto Final de Carrera 2015 Semestre 2 Oscar Escudero Sanchez Andorra la Vella - Andorra. Copyright 2016 Adrián Chavero Ramos

11 de enero PFC. Proyecto Final de Carrera 2015 Semestre 2 Oscar Escudero Sanchez Andorra la Vella - Andorra. Copyright 2016 Adrián Chavero Ramos PFC 11 de enero 2016 Proyecto Final de Carrera 2015 Semestre 2 Oscar Escudero Sanchez Andorra la Vella - Andorra Copyright 1 PFC - FRAMEWORK CVF 1. Introducción al PFC 2. Investigación y estudio de frameworks

Más detalles

Temario curso Desarrollo de Aplicaciones Empresariales con Spring Framework Core 4

Temario curso Desarrollo de Aplicaciones Empresariales con Spring Framework Core 4 Temario curso Desarrollo de Aplicaciones Empresariales con Spring Framework Core 4 I. Generales El temario comprende las siguientes tecnologías. 1. Introducción a Spring Framework 2. Spring Core 3. Spring

Más detalles

El proyecto se ha dividido en cuatro etapas principales: - Se ha comenzado con la investigación de frameworks de mercado, donde se han analizado tres

El proyecto se ha dividido en cuatro etapas principales: - Se ha comenzado con la investigación de frameworks de mercado, donde se han analizado tres 1 2 El proyecto se ha dividido en cuatro etapas principales: - Se ha comenzado con la investigación de frameworks de mercado, donde se han analizado tres de los más representativos marcos de trabajo del

Más detalles

Práctica Desarrollo de Aplicaciones Avanzadas con Tecnología JAVA. Convocatoria de Septiembre

Práctica Desarrollo de Aplicaciones Avanzadas con Tecnología JAVA. Convocatoria de Septiembre Práctica Desarrollo de Aplicaciones Avanzadas con Tecnología JAVA. Convocatoria de Septiembre La práctica es obligatoria y necesaria para poder aprobar la asignatura en la convocatoria de septiembre. Deberá

Más detalles

Diseño e Implementación con J2EE

Diseño e Implementación con J2EE Diseño e Implementación con J2EE Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones (TIC) Universidad de A Coruña http://www.tic.udc.es/~fbellas fbellas@udc.es Objetivos

Más detalles

MASTER PROFESIONAL C# 5 Y ASP.NET MVC 5

MASTER PROFESIONAL C# 5 Y ASP.NET MVC 5 MASTER PROFESIONAL C# 5 Y ASP.NET MVC 5 TEMARIO MODULO I. EL LENGUAJE C# 5 Introducción al desarrollo de soluciones informáticas. El Framework.NET. o Descripción de la plataforma. o Las especificaciones

Más detalles

Master en Java Certificación para Programadores

Master en Java Certificación para Programadores Javmasdeb Master en Java Certificación para Programadores Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java Formación: Master Horas: 112 Introducción Java es un lenguaje de programación con el que

Más detalles

JSP/SERVLETS ISIS 3710

JSP/SERVLETS ISIS 3710 JSP/SERVLETS ISIS 3710 Aplicaciones Web Servidor/Contenedor web - Lógica de negocio - Procesamiento computacionalmente costoso - Bases de datos SQL/NoSQL - CDNs: content deliver network - Motores de minería

Más detalles

Guía Docente ESCUELA POLITÉCNICA SUPERIOR

Guía Docente ESCUELA POLITÉCNICA SUPERIOR Guía Docente SISTEMAS WEB I CUARTO CURSO PRIMER SEMESTRE GRADO EN INGENIERÍA DE SISTEMAS DE INFORMACIÓN MODALIDAD: PRESENCIAL CURSO 2016-2017 ESCUELA POLITÉCNICA SUPERIOR 1. IDENTIFICACIÓN DE LA ASIGNATURA

Más detalles

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES Experto en Desarrollo de Componentes

Más detalles

Aplicaciones Web. Aplicaciones Distribuidas

Aplicaciones Web. Aplicaciones Distribuidas Aplicaciones Web Aplicaciones Distribuidas Contenido La Web. Sitios Web vs. Aplicaciones Web. HTTP. HTML. Sesiones. Tecnologías facilitadoras. HTML Dinámico. JavaScript. 2 La Web Petición http://www.um.es/index.html

Más detalles

DESCRIPCIÓN ESPECÍFICA

DESCRIPCIÓN ESPECÍFICA DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios. SUBSECTOR: Informática. Nombre del Módulo: Programación Java para Ambiente WEB total: 120 horas Objetivo General: Participar en el diseño,

Más detalles

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

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Servlets Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Jesús Arias Fisteus & Andrés Marín López {jaf, amarin}@it.uc3m.es Servlets p. 1 Introducción Servlet: Programa Java que se ejecuta en

Más detalles

AngularJS. Programa de Estudio.

AngularJS. Programa de Estudio. AngularJS Programa de Estudio AngularJS Aprende a crear aplicaciones dinámicas de manera simple y rápida, extendiendo el lenguaje HTML y utilizando todas las herramientas y ventajas que este poderoso framework

Más detalles

Modelo de aplicaciones Web clásico (1)

Modelo de aplicaciones Web clásico (1) Introducción a AJAX Modelo de aplicaciones Web clásico (1) La mayor parte de las interacciones del usuario causan una petición HTTP al servidor Web El servidor Web procesa la petición y devuelve la nueva

Más detalles