GENERIC TAGSCURSO STRUTS 2 En el siguiente apartado del curso se mostrará el grupo de Tags Generic de Struts 2, realizando una revisión de cada una de.

Slides:



Advertisements
Presentaciones similares
Estructuras de control
Advertisements

Internet y tecnologías web
Curso de java básico (scjp)
Configurar un curso (Función del profesor) Editar el nombre, el nombre corto y el informe (que se muestra en la portada) Escoger la formato del curso y.
Programación Orientada a Objeto 1
Lenguaje PHP Capítulo 4.
Aprendizaje de Microsoft® Access® 2010
SQL Server Integration Services SSIS
"java del lado del servidor" Servlet y JSP Java Server Pages.
Desarrollo de Aplicaciones para Internet
SESION 4 PROGRAMACIÓN. Septiembre 2010 SESION 3: OPERADORES 1 Comentarios /* */ // /// La guía de estilo de UA determina que: No se debe escribir comentario.
Tema 2: Lenguaje PHP básico
JSP Copyright ISIPE – Instituto de Servicios Informáticos para Empresas – Universidad Siglo 21 – Cualquier copia u otro uso debe ser autorizado expresamente.
Curso de Java y Aplicaciones Web
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Preguntas tipo test (Tema I)
Teoría de lenguajes y compiladores
El portal de recursos electrónicos de la UAM
Tecnología de la Programación Javier Nieves Acedo Standar Template Library (STL)
CURSO STRUTS 2 CONVERSIÓN DE TIPOS
RESUMENCURSO STRUTS 2 Resumen de lo visto en este tercer módulo: VISTA del framework Struts 2 Debes tener los conceptos muy claros sobre: Results UI Tags.
Curso Administrativo OTEC Unidad II : Configuración de Cursos Curso creado por : Libro de Clases Electrónico (LCE) ACTUALIZADO
Al término de la clase, el alumno reconoce las ventajas de usar JAVASCRIPT para un proyecto web.
Igor Santos Grueiro. Ahora tenemos datos y datos …
FORMULARIOS HTML TIPOS DE ELEMENTOS DE FORMULARIO n Campos de entrada de datos. n Campos de datos de varias líneas. n Listas. n Botones. n Textos descriptivos.
Ingeniero Anyelo Quintero
PROGRAMACION II.  Es un conjunto de datos no necesariamente del mismo tipo, los cuales se podrán manipular o realizar cualquier operación sobre cada.
Java Server Faces.
COMPUTACIÓN APLICADA FACULTAD DE INGENIERÍA, UAQ Tablas Dinámicas, Macros Ma. Teresa García Ramírez.
UNIDAD 2:Crear, abrir y cerrar una base de datos Hacer clic sobre la opción Nuevo de la pestaña Archivo. Se mostrarán las distintas opciones para nuevos.
Pulse para añadir texto Desarrollo de sitios web con PHP y MySQL Tema 2: Lenguaje PHP básico Elaborado por: José Mariano González Romano
Capítulo 1 “Elementos de Programación”
ESTRUCTURA DE DATOS EN JAVA
PHP TODO SOBRE PHP.
ELO3201 Contenedores Biblioteca Estándar de Templates Agustín J. González ELO320 Contenido Contenedores: Vector, List, Deque, Stack, Queue, Priority Queue,
OBJETOS DISTRIBUIDOS E INVOCACIÓN REMOTA ING. MARISCAL.
FILTROS. Un filtro es un programa que recibe una entrada, la procesa y devuelve una salida. Relacionando filtros simples podemos hacer prácticamente cualquier.
 Opciones de apertura de archivos Leer los nombres de variable. En las hojas de cálculo, puede leer los nombres de variable de la primera fila del archivo.
Modelo-Vista-Controlador Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación original fue realizada en Smalltalk.
Ihr Logo PHP Parte 4 “manejo de formularios”. Your Logo Formularios  El proceso para el manejo de FORMULARIOS html requiere generalmente dos páginas,
Moodle es un entorno de aprendizaje que está basado en los principios pedagógicos constructivistas, con un diseño modular que hace fácil agregar contenidos.
Formularios La mayor parte de los elementos HTML de que disponemos permite al visitante visualizar los contenidos de un sitio, pero no interactuar con.
Arreglos y comunicación Usuario
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.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
I NGENIERÍA DE S OFTWARE L ABORATORIO IX Struts Eduardo Saavedra A. 27/10/2009.
PEDRO ALBERTO ARIAS QUINTERO. El shell es un intérprete de órdenes, los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como.
Jakarta Struts version Juan Manuel Zorrilla Gamarra Mario Titto Acostupa.
Vamos a tratar algunos temas que es necesario conocer a la hora de administrar un sistema informático y que nos van a ser útiles sin importar el sistema.
PHP con Bases de Datos Tema 5 Funciones Introducción Valor de una Función Función para obtener fecha actual. Documentación de Funciones Funciones de Usuario.
Fundamentos de Programación
Práctica Profesional PHP.
EduCat Prototipos. Introducción En las próximas páginas se muestra un bosquejo de lo que será la interfaz gráfica de nuestro programa, EduCat, para los.
MSSQL SERVER CURSO BÁSICO 1. CONCEPTOS BASICOS DE SQL. DESCRIPCIÓN DEL CURSO. Sesión 3: Índices Uso, Creación, Tipos, Eliminación LENGUAJE DE CONSULTAS.
Manual PHP Básico Camilo Cartagena.
Your Logo ING. FREDY ALEXANDER MARTINEZ. Here comes your footer  Page 2 Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación.
Administración de Sitios Web Introducción al Lenguaje PHP
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
ARRAYS Y COLECCIONES DE DATOS. ARRAYS Arrays – Matriz – Vector Elemento del lenguaje que nos permite agrupar un conjunto de valores del mismo tipo, y.
Web y Multimedia II Integrantes: Piero Álvarez Mayra Atience Jhonney Bermeo Johanna Cabrera Gabriela Cango.
Tratamientos Secuenciales Generalizados II Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 19 Versión
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Softlogia S.R.L. Formación de Recursos Humanos Java Server Faces Instructor: Martin R. Baspineiro.
Introducción a programación web Martin Esses. Formularios HTML se utilizan para pasar datos a un servidor. Un formulario HTML puede contener elementos.
Las interfaces Predicate y Function Versión Unidad Didáctica 17 Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos.
PHP: HyperText Preprocessor Sebastian Lozano Herrera Felipe Rojas Hernández.
Módulo III.- Recursos en UPSA VIRTUAL Este módulo explica como configurar los distintos recursos que pueden encontrarse en un curso de MOODLE. Recurso:
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Introducción a programación web Martin Esses. En las presentaciones anteriores, vimos como enviar datos a un controlador usando POST y como generar formularios.
Transcripción de la presentación:

GENERIC TAGSCURSO STRUTS 2 En el siguiente apartado del curso se mostrará el grupo de Tags Generic de Struts 2, realizando una revisión de cada una de ellas. La información que se estudiará en este apartado es: ¿Qué son las Generic Tags? Tipos de Generic Tags Control Tags Data Tags

GENERIC TAGSCURSO STRUTS 2 ¿QUÉ SON LAS GENERIC TAGS ? Las Generic Tags de Struts 2 es una librería de etiquetas, que son utilizadas para el control de las páginas cuando la Vista es procesada, permitiendo labores de procesamiento sobre los datos. Uso de las Generic Tags Para poder utilizar las Generic Tags de Struts 2 sólo hay que invocar a la siguiente directiva: Para cualquier parámetro de los tags se pueden asignar distintos valores: valor estático o expresión OGNL. Para que se evalúen el valor del atributo del tag, como una expresión OGNL es necesario que el valor esté delimitado por la sintaxis de OGNL, %{ }.... test=”usuario”...//test= varlo fijo “usuario”... test=”%{usuario}”...//test= valor OGNL “usuario” (dinámico)... test=”%{#session.usuario}”...//test= valor OGNL “#session.usuario”... test=”%{5 + 5}”...//test= valor OGNL igual a 10 Generic Tags VS UI Tags La mayor diferencia entre las generic tags y las UI tags es, que las generic tags devuelven la respuesta directamente, mientras que las UI tags utilizan plantillas (templates) para representar su respuesta en función del theme seleccionado.

GENERIC TAGSCURSO STRUTS 2 TIPOS DE GENERIC TAGS Las generic tags se pueden dividir en dos grupos en función de su objetivo: Control Tags Data Tags. Data Tags Las data tags se utiliza para manipular o crear datos, como los bean o mensajes i18n Ejemplo Control Tags Las control tags son utilizadas para controlar el flujo en la Vista, como las sentencias if... else. Ejemplo Has elegido 1 Has elegido 2

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Las control tags son utilizadas para controlar el flujo en la Vista, como las sentencias if... else. La lista de control tags es: append else elseIf generator if iterator merge sort subset

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tags if, elseIf y else Estos tres tags se utilizan para formular sentencias condicionales, funcionando de la misma forma que en Java. Los tags if y elseIf requieren de un atributo, mientras que el tag else no tiene ningún atributo. Atributos Atributo Tipo DatoValor Defecto Descripción test*BooleanSentencia condicional Ejemplo Has elegido 1 Has elegido 2 Has elegido otro número distinto a 1 y 2

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tag append Este tag se utiliza para concatenar iterators respetando el orden de los elementos de las listas y el orden e las propias listas. Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción varStringLa variable que se creará que referencia el objeto iterator concatenado.

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tag merge El tag merge une listas para crear una lista que contenga todos los elmentos. El orden el que se añaden los elementos es alterno, se lee un elemento de cada lista en sucesión. Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción varStringLa variable que se creará que referencia el objeto iterator concatenado.

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tag iterator Este tag permite recorrer los datos de un array, Collection o un Map, y para cada uno de los elementos del objeto iterable lo almacena en el Value Stack Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción valueStringEl objeto iterable a mostrar sus datos statusIteratorStatus asignar a una variable que apunte al objeto IteratorStatus varStringNombre de referencia del elemento actual del objeto iterable. El objeto IteratorStatus que se obtiene del atributo “status” dispone de los siguientes atributos, que pueden ser útiles en la representación de datos en la bucle. Propiedad Tipo Dato Descripción indexIntegerEl índice de la iteración, comenzando en 0 countIntegerLa iteración actual index + 1 firstBooleanIndica si el elemento actual es el primero del objeto iterable lastBooleanIndica si el elemento actual es el último del objeto iterable evenBooleanIndica si el número (count) del elemento actual es par oddBooleanIndica si el número (count) del elemento actual es impar modulusIntegerEste método toma un Integer y devuelve el módulo del contador

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tag generator Esta tag se utiliza para crear un iterator and guardarlo en el Value Stack. Al cerrar el tag generator se elimina del Value Stack, por este motivo solo se puede trabajar con el iterator entre las tags de generator Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción val*StringEl código para ser convertido en un iterator separator*Stringdelimitador que separa la entrada val en elementos para convertir converterConverterclase Converter para convertir la entrada String pasa en val a un Objeto, debe ser una clase de tipo Converter, que implemente el interface org.apache.struts2.util.IteratorGenerator countIntegernúmero máximo de elementos en el iterator varStringvariable que referencia al iterator resultante

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tag sort El tag sort permite ordenar los elementos de un iterator. Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción comparator*java.util.Comparatorclase Comparator que se utilizará para realizar la comparación de los elementos sourceStringorigen de datos del iterator para ordenarlo varStringvariable que referencia al nuevo iterator resultante ordenado

GENERIC TAGSCURSO STRUTS 2 CONTROL TAGS Tag subset Este tar permite crear un sublista de un objeto iterator. Atributos Ejemplo En el anterior código el atributo decider, invocará al método getFiltroPoblacionDecider(), implementado en el Action el cual realiza un filtro de un listado de ciudades por el número de población. Atributo Tipo DatoValor Defecto Descripción sourceStringorigen de datos del iterator varStringvariable que referencia al nuevo iterator resultante countIntegernúmero de entradas en el iterator resultante deciderDeciderclase que implemente el interface SubsetIteratorFilter.Decider, el cual determina si una entrada debe ser incluida o no en el iterator resultante. startIntegeríndice de comienzo en del iterator definido en el source

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Las data tags se utiliza para manipular o crear datos, como los bean o mensajes i18n. La lista de data tags es: a action bean date debug i18n include param property push set text url

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag a Esta tag presenta un enlace HTML (anchor). Puede aceptar todos los atributos que el elemento HTML Atributos No dispone de atributos propios Ejemplo Enlace

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag action El tag action se utiliza para executar un Action y su Result, además añade los parámetros del Action al Context Map del Value Stack Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción name*Stringnombre del Action a ser invocado namespaceStringnamespace del Action executeResultBooleanfalseindica si el resultado del Result debe ser mostrado flushBooleantrueindica si el writer debe realizar un flush al final del Action ignoreContextParamsBooleanfalseindica si los parámetros de la petición deben ser incluidos cuando se invoca al Action varStringvariable que referencia al Action añadido al Context Map

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag bean El tab bean crea un JavaBean y lo almacena en el Context Map del Value Stack. Este tag es similar en funcionalidad al tag de JSP Atributos Ejemplo 30º C = º F Atributo Tipo DatoValor Defecto Descripción name*Stringclase completa del JavaBean para crear varStringvariable que referencia al JavaBean añadido al Context Map

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag date El tag date formatea un objeto de tipo Java Date Atributos Ejemplo Hoy (formato original): Hoy (mm//dd/yyyy): Hoy (MMM d, yyyy): Atributo Tipo DatoValor Defecto Descripción name*Stringvalor fecha a formatear formatStringpatrón formato fecha niceBooleanfalseindica si aplicar un formato bonito varStringvariable que referencia a la fecha formateada añadido al Value Stack

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag debug El tag debug devuelve el contenido del Value Stack y otros objetos. Atributos No dispone de atributos propios Ejemplo

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag i18n El tag i18n permite obtener un recurso de mensajes y almacenarlo en el Value Stack para poder utilizarlos Atributos Ejemplo Entre las etiquetas i18n se puede acceder a los mensajes de mensajes.properties. Atributo Tipo DatoValor Defecto Descripción name*Stringnombre del recursos de mensajes a utilizar (ej. ejercicio/capitulo3/Persona/resourc eBundle)

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag include El tag include muestra la salida de un Servlet o un JSP Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción value*Stringel Servlet/JSP para incluir su respuesta NOTA: Los parámetros ( ) son pasados como request parameters, por lo que hay que utilizar la notación EL ${param.ParamName} para visualizarlos. No utilizar el tag para acceder a los parámetros.

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag param El tag param se utiliza para pasar parámetros al tag en el que esté incluido Atributos Ejemplo El valor del atributo value, siempre se evalua como una expresión OGNL incluso si no sin los delimitadores % {}. //las siguientes asignaciones al parámetro nombre son iguales Para poder utilizar expresiones EL de JSP o texto, hay que definir el valor entre los delimitadores del tag. ${header.nombre} Nombre del usuario en texto Atributo Tipo DatoValor Defecto Descripción name*Stringnombre del parámetro valueStringvalor del parámetro

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag property Este tar permite crear un sublista de un objeto iterator. Atributos Ejemplo Atributo Tipo DatoValor Defecto Descripción valueString valor para ser mostrado escapeBooleantruelos caracteres HTML son escapados defaultStringvalor por defecto si el valor de value es null

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag push El tag push es similar al tag set. La diferencia es que el tag push, coloca un objeto en el Value Stack, no en el Context Map. Otra carácteristica única del tag push es que el objeto estará disponible en el Value Stack solo entre las tags de apertura y cierre de push. Atributos Ejemplo Usuario ID: Nombre: Atributo Tipo DatoValor Defecto Descripción value*Stringvalor para ser colocado en el Value Stack

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag set El tag set crea un elemento clave/valor en uno de los siguientes contextos: el Context Map del Value Stack el session map el application map el request map el page map Atributos Ejemplo Nombre: Atributo Tipo DatoValor Defecto Descripción nameStringla clave del atributo a crear valueStringobjeto a ser referenciado por la clave scopeStringdefaultel ambito donde obtener la variable, su valor puede ser: application, sessio, request, page o default

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag text El tag text muestra un mensaje al usuario en función de su idioma (i18n). El mensaje debe estar en el archivo de recursos de mensajes del mismo nombre que el action que está asociado. Si no se encuentra la propiedad el mensaje, entonces se utilizará por defecto el texto que se encuentre en contenido entre las etiquetas text Atributos Ejemplo //El recurso de mensajes contiene la siguiente linea mensaje.buscar=Mensaje Buscar {0} Texto por defecto si no se encuentra la clave “mensaje.buscar” Parámetro Atributo Tipo DatoValor Defecto Descripción name*Stringclave del mensaje a mostrar searchValueStackBooleantruebuscar en el Value Stack si no se encuentra la clave del mensaje varStringreferencia del texto obtenido mediante el tag

GENERIC TAGSCURSO STRUTS 2 DATA TAGS Tag url Este tag crea una URL dinámicamente. Atributos Ejemplo <s:url var=”urlLogin” action=”login” namespace=”/secure” scheme=”https” includeParams=”true”/> Atributo Tipo DatoValor Defecto Descripción actionStringel action que la URL apuntará anchorStringanchor para crear la URL encodeBooleantruindica si codifica los parámetros escapeAmpBooleantrueindica si debe escaper el carácter ampersnd & includeContextBooleantrueindica si el contexto actual debe ser incluido includeParamsStringgetpuede ser uno de estos tipos: one, get, all methodStringel método del action namespaceStringel namespace del action portletModeStringmodo portlet schemeStringhttp, https, ftp valueStringel valor del destino si no se usa para un action windowStateStringpara uso de portlets, especifica el estado de la ventana varStringreferencia de la url creada mediante el tag

GENERIC TAGSCURSO STRUTS 2 RECUERDA QUE… Completado el apartado Generic Tags debemos recordar los siguientes conceptos estudiados: DefiniciónTipos ¿Qué son las Generic Tags? Las Generic Tags de Struts 2 es una librería de etiquetas, que son utilizadas para el control de las páginas cuando la Vista es procesada, permitiendo labores de procesamiento sobre los datos. Taglib Tipos de UI Tags Las UI tags se pueden dividir en dos grupos en función de su cometido: Control Tags Utilizadas para controlar el flujo en la Vista. append else elseIf generator if iterator merge sort subset Data Tags Utilizadas para manipular o crear datos a action bean date debug i18n include param property push set text url