Libros urgentes
Ciencias Humanas
Ciencias Técnicas
Derecho
Economía
Informática
Libros de Texto
Literatura
Oposiciones
Otros
Tiempo Libre

Informática > Programación > Programación. Otros

Jakarta Struts
Cavaness, Chuck (Ed. Anaya Multimedia)
Precio:41,3 € ($60,6)
544 páginas.
Idioma: Español
ISBN: 8441518602. ISBN-13: 9788441518605
1ª edición (06/2005).
Entrega: De 1 a 7 días contra reembolso por agencia urgente*


Aunque el aspecto de una aplicación web empresarial es importante, los desarrolladores encuentran que dedican demasiado tiempo a la presentación antes de codificar la lógica de negocio de su aplicación. Además de esta cuestión, en el desarrollo de aplicaciones web complejas surgen otros problemas comunes como controlar el flujo de navegación o conseguir normalizar las acciones que procesa nuestro sistema.

El proyecto de código abierto Jakarta Struts aborda estos conflictos al combinar Java Servlets, JavaServer Pages (JSP), etiquetas personalizadas y recursos de mensajes en un marco unificado y reutilizable. El resultado es una plataforma cooperativa, eficaz y apropiada tanto para desarrolladores independientes como equipos grandes de desarrollo.

A pesar de su creciente popularidad, la documentación acerca de este marco resulta aún hoy limitada. Esta obra le proporcionará información actualizada y precisa sobre el trabajo con Struts 1.1. Examina pormenorizadamente los componentes de la implementación MVC de Struts, incluyendo un análisis de las etiquetas personalizadas JSP, o cómo integrar las nuevas API JavaServer Faces (JSF), la librería de etiquetas estándar para JavaServer Pages (JSTL) y el lenguaje de expresión (EL) con Struts. Además, descubrirá todo lo que necesita saber acerca de validación y gestión de excepciones, el uso de su librería de plantillas Tiles, y en definitiva las claves fundamentales para mejorar de manera práctica y real sus aplicaciones web.

ÍNDICE

Contenido

Prefacio
Organización
Convenciones utilizadas en este libro
Utilizar los ejemplos de código

Capítulo 1. Introducción
Breve historia de la Web
¿Qué son los servlets Java?
JavaServer Pages
Arquitecturas JSP Modelo 1 y Modelo 2
¿Por qué el patrón de Modelo-Vista-Controlador es tan importante?
El Modelo de MVC
La Vista de MVC
El Controlador de MVC
¿Qué es un marco de trabajo?
Creación del marco de trabajo Struts
Contribución al proyecto Struts
Alternativas a Struts
Construir su propio marco de trabajo
Barracuda
Cocoon
Expresso
Freemarker, Velocity y WebMacro
Maverick
SiteMesh
Jakarta Turbine
WebWork
Spring
JavaServer Faces

Capítulo 2. Dentro del nivel Web
Visión de conjunto de una arquitectura
El nivel cliente
El nivel Web
El nivel medio
El nivel EIS
¿Dónde encaja Struts?
La fase de petición/respuesta HTTP
La petición HTTP
La respuesta HTTP
HTTP vs HTTPS
Struts y ámbito
Ámbito de petición
Ámbito de sesión
Ámbito de aplicación
Ámbito de página
Utilizar parámetros URL
Reenviar vs redirigir
Utilizar un redireccionamiento
Utilizar un reenvío
¿Qué es lo mejor para Struts?

Capítulo 3. Visión de conjunto del marco de trabajo Struts
Un ejemplo de una cuenta bancaria
Examinar la visión de conjunto
Los paquetes de componentes de Struts
Componentes de controlador Struts
La ActionServlet de Struts
Clases Action de Struts
Mapear las acciones
Determinar la siguiente vista
Componentes del modelo Struts
Componentes de vista de Struts
Utilizar ActionForm de Struts
Utilizar JSP para la presentación
Utilizar librerías de etiquetas personalizadas
Utilizar paquetes de recursos de mensaje
Soporte de múltiples aplicaciones
Resumen

Capítulo 4. Configurar aplicaciones Struts
La aplicación "Storefront"
¿Qué es una aplicación Web?
Elementos de una aplicación Web
La estructura de directorio de la aplicación Web
Archivos WAR
El descriptor de despliegue de aplicación Web
DTD de descriptor de despliegue de aplicación Web
Configurar el archivo web.xml para Struts
Mapear la ActionServlet de Struts
Mapear peticiones a servlets
Especificar múltiples módulos de aplicación
Declarar los parámetros de inicialización
Utilizar múltiples archivos de configuración Struts
Configurar las librerías de etiquetas
Establecer la lista de archivo de bienvenida
Utilizar una acción Struts en la lista de archivo de bienvenida
Configurar gestión de error en web.xml
El archivo de configuración Struts
Configurar múltiples módulos de aplicación
El paquete org.apache.struts.config
La clase ApplicationConfig
La DTD de configuración de Struts
El elemento data-sources
El elemento form-beans
El elemento global-exceptions
El elemento global-forwards
El elemento action-mappings
El elemento controller
El elemento message-resources
El elemento plug-in
Un archivo struts-config.xml completo
Utilizar múltiples módulos de aplicación
Especificar un elemento DOCTYPE
El componente Digester
La herramienta Consola de Struts
Recargar los archivos de configuración

Capítulo 5. Componentes del controlador Struts
El mecanismo del controlador
La clase ActionServlet
Ampliar la clase ActionServlet
Proceso de inicialización de Struts
La clase RequestProcessor
Ampliar la clase RequestProcessor
La clase Action
La caché de la clase Action
La clase ActionForward
Crear clases Action multiproceso
Lógica de negocio y la clase Action
Utilizar las acciones preconstruidas de Struts
La clase org.apache.struts.actions.ForwardAction
La clase org.apache.struts.actions.IncludeAction
La clase org.apache.struts.actions.DispatchAction
La clase org.apache.struts.actions.LookupDispatchAction
La clase org.apache.struts.action.SwitchAction
Las clases de utilidades
La clase RequestUtils
La clase ResponseUtils
El paquete Commons BeanUtils
El paquete Commons Collection
Seguridad en las clases Action

Capítulo 6. Componentes del modelo Struts
La "M" en MVC
Tipos de modelos
El modelo conceptual
El modelo de diseño
¿Qué es un objeto de negocio?
Requisitos para objetos de negocio
La importancia de los objetos de negocio
Persistencia
Persistir objetos de negocio
Almacenar objetos en un modelo relacional
La incompatibilidad de impedancias
¿Qué ofrece Struts al modelo?
Crear el modelo de Storefront
Acceder a una base de datos relacional
Crear los objetos de negocio de Storefront
El modelo de datos de Storefront
Mapear los objetos de negocio a la base de datos
Marcos de mapeado objeto-a-relacional
El marco de persistencia de Storefront
Los patrones Business Delegate y DAO
Conclusión

Capítulo 7. Componentes de Vista de Struts
¿Qué es una vista?
Utilizar vistas dentro del marco de trabajo Struts
Documentos HTML
Etiquetas JSP personalizadas
JavaScript y hojas de estilo
Archivos multimedia
Paquetes de recursos de mensaje
Utilizar JavaBeans dentro de los componentes de vista
Repaso rápido
Cómo las aplicaciones Struts utilizan JavaBeans
El patrón Objeto de transferencia de datos
¿Qué son ActionForm?
ActionForm y ámbito
El ciclo de vida de una ActionForm
Crear una ActionForm
El método validate()
El método reset()
Declarar ActionForm en el archivo de configuración de Struts
Utilizar una ActionForm en una Action
Declarar propiedades ActionForm como String
Utilizar ActionForm a través de múltiples páginas
Utilizar ActionErrors
La clase ActionMessage
Crear ActionErrors en la clase Action
Realizar la validación de presentación
Utilizar la clase DynaActionForm
Configurar ActionForm dinámicas
Realizar validación con DynaActionForm
Mirar hacia JavaServer Faces
¿Qué tiene que ver JSF con Struts?

Capítulo 8. Librerías de etiquetas personalizadas JSP
Etiquetas personalizadas: visión de conjunto
¿Qué es una etiqueta?
¿Qué es una etiqueta JSP personalizada?
Ventajas de utilizar etiquetas personalizadas
¿Qué es una librería de etiquetas?
Los componentes de la librería de etiquetas
Manejador de etiquetas
El archivo TLD
El archivo web.xml
La página JSP
Librerías de etiquetas incluidas con Struts
Utilizar librerías de etiquetas con aplicaciones Struts
Utilizar JavaBeans con etiquetas Struts
Acceder a las propiedades básicas
Acceder a propiedades anidadas
Acceder a propiedades indexadas
Etiquetas HTML de Struts
La etiqueta html
La etiqueta base
La etiqueta form
El atributo action.
El atributo enctype
El atributo name
El atributo scope
El atributo type
Utilizar múltiples etiquetas form
Las etiquetas button y cancel
La etiqueta checkbox
Las etiquetas messages y errors
Manejadores de evento de JavaScript
Atributos de navegación HTML
Etiquetas Logic
Comparación de valor
Coincidencia de subcadenas
Redirigir y reenviar
Utilidades de colección
Mensajes y errores
Etiquetas Bean
La etiqueta define
La etiqueta header
La etiqueta include
La etiqueta message
La etiqueta parameter
La etiqueta resource
La etiqueta write
Etiquetas Nested
Otras librerías de etiquetas de utilidad
El proyecto Jakarta Taglibs
JSPTags.com
La librería de etiquetas estándar para JSP (JSTL)
Etiquetas básicas JSTL
Etiquetas de internacionalización JSTL
Etiquetas XML de JSTL
Etiquetas SQL de JSTL
Funciones
Un nuevo lenguaje de expresión
Requisitos JSTL
JSTL y Struts

Capítulo 9. Ampliar el marco de trabajo Struts
¿Qué es un punto de ampliación?
Puntos de ampliación generales
Utilizar el mecanismo PlugIn
Añadir el plug-in al archivo de configuración
Ampliar las clases de configuración de Struts
Puntos de ampliación del controlador
Ampliar la clase ActionServlet
Ampliar la clase RequestProcessor
Utilizar el método processPreprocess()
Ampliar la clase Action base
Ampliar los componentes de la vista
Ampliar las etiquetas personalizadas de Struts
Ampliar los componentes del modelo
Las clases UserContainer y ApplicationContainer
Desventajas de ampliar el marco de trabajo

Capítulo 10. Gestionar excepciones
Gestión de excepciones de Java
Excepciones de Java
La pila de invocación de método
¿Qué pasa con la cláusula de envío?
Excepciones activadas y desactivadas
Impacto de rendimiento de la gestión de excepciones
Excepciones del sistema vs aplicación
Utilizar excepciones en cadena
Tratar con múltiples excepciones
Gestión de excepciones facilitada por Struts
Gestión de excepciones declarativas vs de programación
Utilizar gestión de excepciones por medio de programación
Atando cabos sueltos
Gestionar excepciones remotas
Excepciones en etiquetas personalizadas
La interfaz TryCatchFinally
Gestión de excepciones internacionalizada
Conclusión

Capítulo 11. El marco de trabajo Validator
La necesidad de un marco de trabajo de validación
Instalar y configurar el Validator
Paquetes obligatorios
Configurar las reglas de validación
El archivo validation-rules.xml
El archivo validation.xml
Conectar Validator
Utilizar una ActionForm con el Validator
Crear sus propias reglas de validación
El Validator y las etiquetas personalizadas JSP
Utilizar JavaScript con el Validator
Configurar el archivo validation-rules.xml para JavaScript
Internacionalizar la validación
Utilizar el Validator fuera de Struts
Modificar el archivo validation-rules.xml

Capítulo 12. Internacionalización y Struts
¿Qué es internacionalización?
Soporte para I18N en Java
La clase Locale
La ubicación por defecto
Determinar la ubicación del usuario
Paquetes de recursos Java
La clase MessageFormat
Soporte plurilingüe
Internacionalizar sus aplicaciones Struts
El paquete de recursos Struts
Crear un paquete de recursos Struts
Directrices de nombrado de paquetes de recursos
El paquete de recursos y el classpath
Acceder al paquete de recursos
La clase MessageTag de la librería de etiquetas Bean
Establecer el conjunto de caracteres
Gestionar excepciones e internacionalización

Capítulo 13. Struts y Enterprise JavaBeans
Implementar el servicio Storefront utilizando EJB
Visión de conjunto de EJB
La interfaz de negocio
Implementación de bean de sesión sin estado
Desplegar JBoss
Hacer de interfaz entre Struts y EJB
Utilizar un Business Delegate
Gestión de excepciones
Intercambiar la implementación
Gestionar referencias propias y remotas de EJB
Implementar un EJBHomeFactory
Utilizar un EJBHomeFactory en un business delegate
¿Qué pasa con las referencias remotas?
Utilizar proxies dinámicos
Conclusión

Capítulo 14. Utilizar Tiles
Entender las plantillas
¿Qué es un plantilla?
Instalar y configurar Tiles
Descargar Tiles
Instalar los archivos JAR necesarios y otros
Añadir la librería de etiquetas Tiles
Configurar Tiles para funcionar con Struts
La propiedad definitions-debug
La propiedad definitions-parser-details
La propiedad definitions-parser-validate
La propiedad moduleAware
La propiedad definitions-factory-class
Utilizar Tiles
¿Qué es un tile?
Utilizar un tile de diseño
Pasar parámetros al diseño
La librería de etiquetas Tiles
La etiqueta insert
La etiqueta definition
La etiqueta put
La etiqueta putList
La etiqueta add
La etiqueta get
La etiqueta getAsString
La etiqueta useAttribute
La etiqueta importAttribute
La etiqueta initComponentDefinitions
Utilizar definiciones
Declarar definiciones en una página JSP
Declarar definiciones en un archivo de configuración
Crear un archivo de configuración de definición
Ampliar las definiciones de Tile
Utilizar definiciones como reenvíos en Struts
Soporte de internacionalización con Tiles

Capítulo 15. Crear archivos de log en una aplicación Struts
Crear archivos de log en una aplicación Web
Utilizar el contenedor servlet para archivos log
Utilizar filtros
Crear un filtro
Crear la clase de filtro
Declarar el filtro en un descriptor de despliegue
Empaquetar el filtro
Utilizar oyentes de evento
Crear un oyente de evento
Crear la clase de oyente de evento
Declarar el oyente de evento en el descriptor de despliegue
Empaquetar el oyente de evento
Jakarta Commons Logging
Instalar el paquete Commons Logging
Utilizar la API Commons Logging
El marco de trabajo Struts y el paquete Commons Logging
Utilizar el paquete log4j
Integrar log4j con Struts
¿Qué son los logger?
Configurar los appender de log4j
Entender los niveles de log de log4j
Inicializar log4j
Inicializar utilizando el archivo log4j.properties
Inicializar utilizando un archivo XML
Especificar una ruta de acceso relativa vs. absoluta
Problemas de sincronización
Limpieza del archivo log
Utilizar Commons Logging en páginas JSP
El impacto de rendimiento de log4j
Ampliaciones log4j de terceros
La API de log de Java 1.4

Capítulo 16. Empaquetar su aplicación Struts
Empaquetar o no empaquetar
¿Qué es empaquetar?
¿Qué es el despliegue?
Decidir cómo empaquetar su aplicación
Gestionar el espacio de nombres
Ubicación de archivos JSP
Precompilar JavaServer Pages
Precompilar páginas JSP con Tomcat
Precompilar páginas JSP con Resin
Precompilar páginas JSP con WebLogic
Empaquetar recursos EJB con Struts
Empaquetar la aplicación como un archivo WAR
Crear el archivo WAR
Crear sus aplicaciones Struts con Ant
¿Qué es Ant?
Instalar y configurar Ant
Para comenzar
Compilar archivos fuente Java
Utilizar Ant para crear el archivo WAR
Limpieza
Crear un entorno build automatizado
Utilizar cron para invocar Ant
Utilizar Tareas programadas de Microsoft
Reiniciar su servidor remotamente

Capítulo 17. Gestionar el rendimiento
¿Qué es un buen rendimiento?
Pruebas de rendimiento vs carga
Herramientas para pruebas de rendimiento y estrés
Probar la aplicación Storefront
Entender los objetivos de rendimiento
Establecer una línea base de rendimiento
Tomar una línea base
Encontrar las áreas problemáticas
Realizar los cambios necesarios en software y hardware
Errores de rendimiento y escalabilidad
Ámbito de petición vs. sesión
Utilizar la palabra clave synchronized
Utilizar java.util.Vector y java.util.Hashtable
Utilizar demasiadas etiquetas personalizadas
Ajustar incorrectamente la JVM
Utilizar demasiadas llamadas remotas
Utilizar demasiados gráficos

Capítulo 18. JavaServer Faces
Struts y JavaServer Faces
¿Necesitamos realmente otro marco de trabajo de interfazde usuario?
Las ventajas de JSF
Visión de conjunto de la arquitectura JSF
Ciclo de vida petición/respuesta de JSF
Instalar y ejecutar la aplicación de ejemplo Struts-Faces
Convertir aplicaciones Struts existentes en JSF
Otras lecturas

Apéndice A. Cambios desde Struts 1.0
ActionServlet y RequestProcessor
Modificaciones en la clase Action de Struts
Cambios en web.xml y struts-config.xml
Cambios en las constantes estáticas de Action
TagUtils y ModuleUtils
Nuevas características de Struts 1.1
Gestión declarativa de excepciones
ActionForm dinámicas
Plug-ins
Múltiples módulos de aplicación
Etiquetas anidadas
Struts Validator
Cambiar a Commons Logging
Eliminación de acciones administrativas
Desaprobación de GenericDataSource
Dependencia de proyectos Commons

Apéndice B. Descargar e instalar Struts
Las distribuciones binarias vs fuente
Crear Struts desde la distribución fuente
Instalar la distribución binaria
Trucos para instalar Struts en Tomcat
Trucos para instalar Struts en WebLogic
Trucos para instalar Struts en WebSphere

Apéndice C. Recursos
Las listas de distribución de Struts
La página Web de recursos de Struts
El sitio de Tiles
El sitio de las etiquetas anidadas
Struts Console
Proyecto Easy Struts

Otros clientes que compraron Jakarta Struts, también compraron:


Apache PrácticoApache Práctico
Rich Bowen; Ken Coar.
288 páginas.
Precio: 22,6 € ($33,16)


Problemas Resueltos De Estructura De Datos Y AlgoritmosProblemas Resueltos De Estructura De Datos Y Algoritmos
José Alberto Verdejo López; Yolanda Ortega Mallén; Narciso Martí Oliet.
352 páginas.
Precio: 31,9 € ($46,8)


No Me Hagas Pensar 2ENo Me Hagas Pensar 2e
Steve Kriug.
210 páginas.
Precio: 28,7 € ($42,12)


Programación Java Server con J2EE Edición 1.3Programación Java Server Con J2ee Edición 1.3
Subrahmanyam Allamaraju; Cedric Beust; John Davies.
1248 páginas.
Envío gratuito
Precio: 66,5 € ($97,57)


Otros libros de Programación. Otros:


Introducción A La Programación
Silva Ramírez, Esther Lídia; Laguía Bonillo, Manuel; Hurtado Rodríguez, Nuria.
180 páginas.
Precio: 12,94 € ($18,98)


Java 2 v5.0Java 2 V5.0
Richarson, Clay W. ; Avondolio, Donald ; Vitale, Joe.
704 páginas.
Envío gratuito
Precio: 46,6 € ($68,38)


SCHAUM S OUTLINE UMLSchaum's Outline Uml
Bennett.
380 páginas.
Precio: 20,5 € ($30,08)


Análisis Y Diseño Orientado A ObjetosAnálisis Y Diseño Orientado A Objetos
Grady Booch.
670 páginas.
Precio: 41,6 € ($61,04)


OBJECT-ORIENTED SYSTEMS ANALYSIS AND DESIGNObject-oriented Systems Analysis And Design
BENNETT.
150 páginas.
Precio: 86,1 € ($126,34)


*Para península. Tiempo estimado para días laborables