
PRECIO: $ 2,225.00
$ 222.50 USD
FICHA TECNICA:
PAGINAS: 528
AUTOR: Arnold Doray
TOMOS: 1
CODIGO: CL569
IDIOMA: ESPAÑOL
FORMATO: TAPA BLANDA, 17,5 x 22,5
EDICION: 1ª.
FECHA ED.: 2007
RESEÑA:
Apache Struts es una herramienta de soporte con la que podrá crear aplicaciones web de forma sencilla, sólida y estable. Este entorno permite reducir el tiempo de desarrollo y se trata de un componente vital en muchas herramientas basadas en Java. Esta obra explica paso a paso el entorno de desarrollo llamado Struts y le muestra la infraestructura extensible a la que se presta, tanto para validaciones de entrada, gestión de errores, como para reporte y control de flujo. Además, a lo largo del libro encontrará una serie de ejercicios basados en supuestos reales con los que practicar y que le harán más ameno el aprendizaje. Este manual va dirigido a personas con diferentes habilidades como diseñadores web, analistas e ingenieros de sistemas y bases de datos.
INDICE:
Parte I. Fundamentos de Struts
1. Introducción
¿Qué es una aplicación Web?
¿Qué puede hacer Struts por usted?
Sobre usted
¿Cómo leer este libro?
Enlaces útiles
Código fuente
2. Revisión de Servlet y JSP
Ejercicio 2: Instalación de Tomcat
Fundamentos de los contenedores servlet
Clases importantes de servlet
JavaServer Pages (JSP)
Análisis de Hello.jsp
Últimos apuntes
Enlaces útiles
Resumen
3. Alcance de variables
Ejercicio 3: Preguntas sobre alcances
Funcionamiento interno de los alcances de sesión y de petición
Resumen
4. Etiquetas personalizadas
Principios de las etiquetas personalizadas
Procesamiento de una etiqueta
Las clases de gestión de Java
Clases ayudantes
El archivo TLD
Ejercicio 4: Una etiqueta de conversión de temperaturas
Paso 1: Preparar el entorno de desarrollo y los script
Paso 2: Escritura del gestor de la etiqueta en Java
Paso 3: Escritura del archivo TLD
Paso 4: Corrección de web.xml
Paso 5: Escritura del JSP
Paso 6: Despliegue y prueba
Herramientas Java profesionales
Enlaces útiles
Resumen
5. El patrón de diseño MVC
La aplicación Web de registro
Requisito 1
Requisito 2
Requisito 3
Requisito 4
Requisito 5
Ejercicio 5: Cuestionario sobre MVC
¿Qué hacer primero?
Struts y el patrón MVC
Ciclo de vida de una petición Struts
Entornos de desarrollo para el modelo
Enlaces útiles
Resumen
6. Validación simple
Procesamiento de validaciones simples
Anatomía de ActionForm
Uso de ActionErrors
Ejercicio 6: ContactForm para un LILLDEP
Paso 1: Preparar el entorno de desarrollo y los script
Paso 2: Implementación de los accesores y los mutadores para ContactForm
Paso 3: Implementación de validate()
Paso 4: Implementación de reset()
¿Qué ha hecho por nosotros Struts hoy?
Resumen
7. Procesamiento de la lógica de negocio
1, 2, 3, acción
La ausencia de estado de Action
Creación de subclases de Action
Lógica de negocio en la aplicación Web de registro
Validación compleja
Transformación de datos
Navegación
Ejercicio 7: Implementación de ContactAction para LILLDEP
Resumen
8. Etiquetas básicas de Struts
Pasos del procesamiento de una página
Evaluación, reemplazo y envío
La Vista de la aplicación de registro
Declaración e instalación de las bibliotecas HTML y Bean
Visualización de texto estático
Formularios y gestores
Etiquetas de introducción de datos
Visualización de errores
Sinopsis de las bibliotecas HTML y Bean
Ejercicio 8: Página de introducción de un contacto en LILLDEP
Enlaces útiles
Resumen
9. Configuración de Struts
La estructura de struts-config.xml
Configuración de la aplicación de registro
Declaración de los bean de formulario
Declaración de excepciones globales
Declaración de redirecciones globales
Declaración de gestores de formulario
Redirecciones
Declaración del controlador
Recursos de mensajes
Declaración de complementos
Ejercicio 9A: Configuración de LILLDEP
Reutilización de código
Ejercicio 9B: La página MNC
Resumen
10. Más etiquetas
Buenas prácticas
Las 2 + 1 bibliotecas restantes de Struts
La biblioteca de etiquetas Logic
Iteración
Propiedades simples, anidadas, indexadas y mapeadas
Procesamiento condicional
Control de flujo
La biblioteca de etiquetas Nested
JSTL y Struts
Lenguaje de Expresión (EL)
Uso de EL
La etiqueta <c:out>
La etiqueta <c:forEach>
Las etiquetas <c:if> y <c:choose>...<c:when>
Extensiones EL de Struts
Ejercicio 10A: La página que devuelve la lista completa de LILLDEP
Paso 1: Completar ListingAction
Paso 2: Completar la página listing.jsp
Paso 3: Correcciones en web.xml
Paso 4: Correcciones en struts-config.xml
Ejercicio 10B: Simplificación de ContactForm
Paso 1: Mejora de ContactForm
Paso 2: Mejora de full.jsp y mnc.jsp
Ejercicio 10C: Uso de JSTL
Paso 1: Instalamos las librerías JSTL y EL de Struts
Paso 2: Mejora de web.xml
Paso 3: Mejora de listing.jsp
Enlaces útiles
Resumen
11. Carga de archivos
Carga de un número fijo de archivos de una vez
Carga de cualquier número de archivos
Ejercicio 11: Importado de datos a LILLDEP
Paso 1: Completar ImportForm
Paso 2: Completar import.jsp
Paso 3: Completar ImportAction
Paso 4: Actualización de struts-config.xml
Paso 5: Compilamos, volvemos a desplegar la aplicación y la probamos
Enlaces útiles
Resumen
12. Internacionalización
Codificación de caracteres, Unicode y UTF-8
Localizaciones
Procesamiento de la entrada
Localización de validaciones
Localización de la salida
Procesamiento de los archivos Application.properties traducidos
Selección de una localización desde el navegador
Intercambio de localizaciones por medio de un vínculo
Cambio de localización con LocaleAction
Ejercicio 12: LILLDEP aplicado al mercado Malasio
Enlaces útiles
Resumen
13. Ejercicio de repaso: Edición de contactos en LILLDEP
Implementación de la funcionalidad de edición
Parte II. Struts avanzado
14. Tiles
Instalación de Tiles
Tiles y la maquetación
Uso de hojas de estilo y maquetas
Componentes de Tiles
Creación de un componente Tiles
Ejemplo: El componente de entrada a una aplicación
Obtención de datos de formularios externos
Ejercicio 14: La funcionalidad de búsqueda
Paso 1: Configuración de Tiles
Paso 2: Escritura del Controlador
Paso 3: Configuración del mapeado de la acción de Tiles
Paso 4: Cambios en ContactAction
Paso 5: Escritura de los JSP de Tiles
Paso 6: Escritura de la definición de tiles
Paso 7: Incrustación del componente dentro del JSP
Paso 8: Despliegue y prueba
Resumen
15. Validator
Declaración del complemento Validator
Principios de validación DTD
Uso de Validator
Ejemplo: Validación de RegistrationForm
Validación de propiedades anidadas e indexadas
Uso de constantes
Validaciones en el lado del cliente
Las validaciones estándar
Uso de validwhen
Uso de validwhen con campos indexados
Inclusión de validaciones personalizadas
Implementación de validate()
Extensión de Validator
Implementación del gestor Java
Migración de código antiguo
Localización de validaciones
Ejercicio 15: Uso de Validator en LILLDEP
Enlaces útiles
Resumen
16. Formularios dinámicos
Declaración de formularios dinámicos
Declaración de propiedades simples
Declaración de propiedades indexadas
Declaración de propiedades mapeadas
Declaración de propiedades anidadas
Acceso a propiedades dinámicas
Transferencia de propiedades al bean de Java
Desventajas de los formularios dinámicos
Cuándo utilizar formularios dinámicos
Validación de formularios dinámicos
La aplicación de registro con formularios dinámicos
¡Mira mamá..., sin manos!: LazyValidatorForm (Struts 1.2.6+)
Desventajas del uso de LazyValidatorForm
El poder oculto de BeanValidatorForm (Struts 1.2.6+)
Ejercicio 16: Eliminación de los contactos seleccionados en LILLDEP
Paso 1: Declaración del bean de formulario SelectionForm
Paso 2: Arreglo de listing.jsp
Paso 3: Creación de la acción para eliminar los contactos
Enlaces útiles
Resumen
17. Popurrí
PropertyUtils
Uso de PropertyUtils
En dos palabras...
DownloadAction (Struts 1.2.6+)
LocaleAction
IncludeAction y ForwardAction
En dos palabras...
LookupDispatchAction
DispatchAction
MappingDispatchAction
En dos palabras...
Uso de Global Forwards
Bitácora
En dos palabras...
Uso de comodines
En dos palabras...
División de struts-config.xml
En dos palabras...
Enlaces útiles
Resumen
18. Ejercicios de repaso: La potencia de las colecciones
Ejercicio 18A: La página principal
Ejercicio 18B: La página para crear una nueva colección
Ejercicio 18C: La página con el listado de colecciones
Ejercicio 18D: Eliminación de los contactos seleccionados
Ejercicio 18E: Inclusión de los contactos seleccionados
Ejercicio 18F: Búsquedas
Resumen
19. Desarrollo de complementos
La tarea a mano
Itinerario de implementación
Proceso que sigue Struts para procesar los Form Bean
Estructura de un complemento
Implementación de DynaFormsPlugIn
Lectura de XML con Digester de Apache
Implementación de DynaFormsLoaderFactory
DefaultDynaFormsLoader
Ejercicio 19: Prueba completa del complemento DynaForms
Ejercicio extra: Gestión de <set-property>
Descripción de la solución
Enlaces útiles
Resumen
20. JavaServer Faces y Struts Shale
Visión general de JSF
Visión general de Shale
Entonces, aprender Struts ¿es una pérdida de tiempo?
JavaServer Faces (JSF)
Componentes gráficos del lado del servidor
Ciclo de vida del procesamiento de una petición
Eventos y gestores de eventos
JSF Tag Libraries
Vinculación de valor y método
Navegación
Ejemplo: La aplicación de registro
Configuración de JSF
Recursos de mensaje
El bean de apoyo del usuario
La Vista
¿Qué es lo que viene ahora?
Ejercicio 20: La librería de integración entre Struts y Faces
Paso 1: Preparación del entorno de desarrollo
Paso 2: Hay que instalar JSF, JSTL y la biblioteca de integración entre Struts y Faces
Paso 3: Edición de web.xml y struts-config.xml
Paso 4: Migración de las páginas JSP de Struts
Paso 5: Migración de las etiquetas <forward> y las entradas de datos
Paso 6: Hacer que los puntos de entrada se redirijan a *.faces
Paso 7: Arreglo de las acciones si fuese necesario
Paso 8: Escritura de las declaraciones <managed-bean> necesarias
En dos palabras...
Introducción a Struts Shale
ViewController
Gestor de diálogos
Integración con Validator
Integración con JNDI
Vistas reutilizables con Clay
Soporte para Ajax en el lado del servidor
Entornos de pruebas unitarias
JSF contra Shale contra Struts
Enlaces útiles
Resumen
Parte III. Apéndices
A. Entornos para implementar el Modelo
Obtención del software
Lisptorq
Ejercicio A: Prueba de Lisptorq
Paso 1: Preparación del entorno de desarrollo
Paso 2: Escritura del esquema de la base de datos
Paso 3: Especificación de la configuración de la base de datos
Paso 4: Generación de los archivos Java
Paso 5: Escritura de un programa de prueba
Paso 6: Inicialización de la base de datos
Paso 7: Ejecución de un programa de prueba
Uso de Torque para la aplicación de registro
Uso de Hibernate para la aplicación de registro
En dos palabras...
Auto generación de clases de Modelo LILLDEP
Enlaces útiles
B. Clases de uso común
javax.servlet.http.HttpServletRequest
javax.servlet.http.HttpSession
org.apache.struts.action.ActionMessage
org.apache.struts.action.ActionMessages
org.apache.struts.action.ActionErrors
org.apache.struts.action.ActionMapping
org.apache.struts.action.Action
org.apache.struts.action.ActionForm
org.apache.struts.upload.FormFile
org.apache.struts.tiles.ComponentContext
org.apache.struts.action.ExceptionHandler
C. Referencia de etiquetas de Struts
La biblioteca de etiquetas HTML
La biblioteca de etiquetas Bean
La biblioteca de etiquetas Logic
La biblioteca de etiquetas anidadas
La biblioteca de etiquetas de Tiles
D. Respuestas
Capítulo 1: Introducción
Capítulo 3: Alcance de variables
Capítulo 5: El patrón de diseño MVC
Capítulo 6: Validación simple
Ejercicio 8: Página de introducción de un contacto en LILLDEP
Ejercicio 9A: Configuración de LILLDEP
Ejercicio 9B: La página MNC
Capítulo 10: Más etiquetas
Ejercicio 10A: La página que devuelve la lista completa de LILLDEP
Ejercicio 10B: Simplificación de ContactForm
Ejercicio 11: Importación de datos a LILLDEP
Capítulo 13: Ejercicio de repaso
Capítulo 14: Tiles
Capítulo 15: Validator
Capítulo 17: Popurrí
Capítulo 20: JavaServer Faces y Struts Shale

Escribe un comentario