1. Los servlets son programas Java que se ejecutan en un servidor web para generar páginas web dinámicas. JSP permite mezclar HTML estático con HTML generado dinámicamente mediante código Java. Ambas tecnologías ofrecen ventajas sobre CGI tradicional al ser más eficientes, portables y poderosas.
El documento introduce JavaServer Pages (JSP), que combina HTML y fragmentos de Java para generar páginas web dinámicas. Cuando un cliente solicita una página JSP, esta es compilada a un servlet por el motor JSP, ejecutado, y los resultados son devueltos al cliente. JSP proporciona una forma más conveniente de escribir y modificar páginas web dinámicas que usar sólo servlets.
1) Las páginas JSP combinan HTML con fragmentos de Java para producir páginas web dinámicas. 2) Cuando un cliente solicita una página JSP, esta es compilada a un servlet Java que es ejecutado y devuelve el contenido al cliente. 3) El documento explica conceptos como directivas, declaraciones, expresiones y etiquetas en JSP, así como el uso de JavaBeans.
The document discusses servlets, which are Java programs that extend the functionality of web servers to generate dynamic web content. It covers servlet fundamentals like the request and response model, lifecycle, and scope of objects. It also discusses more advanced servlet topics like session tracking, filters, lifecycle events, and concurrency handling.
El documento introduce las JavaServer Pages (JSP), una tecnología que permite separar la lógica de negocio de la presentación en aplicaciones web. JSP utiliza etiquetas para incrustar código Java en páginas HTML y generar contenido dinámico. Las páginas JSP se compilan en servlets Java para procesar solicitudes y responder con páginas HTML, lo que mejora la velocidad y escalabilidad con respecto a otras tecnologías como ASP. El documento también explica cómo manejar formularios y crear componentes reutiliz
1) Los servlets y JSPs son módulos que amplían las capacidades de los servidores web orientados a petición-respuesta, permitiendo generar páginas dinámicas en Java.
2) Los servlets usan los métodos doGet y doPost para procesar solicitudes HTTP y devolver respuestas, mientras que las JSPs permiten combinar código estático y dinámico en un mismo archivo para generar contenido.
3) Tanto los servlets como las JSPs pueden acceder a la solicitud, sesión, y otros objetos para proces
Este documento presenta un taller de Java avanzado para empresas y profesionales. El taller cubre temas como Servlets, JSP, EJB, Struts y conclusiones. Cada tema introduce conceptos clave del desarrollo web como contenedores, roles, componentes y la estructura de una aplicación web empaquetada.
Java Server Pages (JSP) es una tecnología que permite crear páginas web dinámicas usando Java como lenguaje de programación. JSP combina la potencia de Java en el servidor con la flexibilidad de HTML en el navegador. El código JSP se compila en código Java de servlets que generan páginas HTML dinámicas en respuesta a solicitudes del cliente.
Este documento presenta la agenda y objetivos de la primera sesión del curso de Programación I impartido por el Ingeniero Carlos Quinto. Se introducen conceptos básicos relacionados a Internet, como dominios, URL, HTTP y herramientas que se utilizarán como Eclipse, Tomcat, MySQL. También se explica la estructura de aplicaciones web en Tomcat y la creación de servlets.
El documento introduce JavaServer Pages (JSP), que combina HTML y fragmentos de Java para generar páginas web dinámicas. Cuando un cliente solicita una página JSP, esta es compilada a un servlet por el motor JSP, ejecutado, y los resultados son devueltos al cliente. JSP proporciona una forma más conveniente de escribir y modificar páginas web dinámicas que usar sólo servlets.
1) Las páginas JSP combinan HTML con fragmentos de Java para producir páginas web dinámicas. 2) Cuando un cliente solicita una página JSP, esta es compilada a un servlet Java que es ejecutado y devuelve el contenido al cliente. 3) El documento explica conceptos como directivas, declaraciones, expresiones y etiquetas en JSP, así como el uso de JavaBeans.
The document discusses servlets, which are Java programs that extend the functionality of web servers to generate dynamic web content. It covers servlet fundamentals like the request and response model, lifecycle, and scope of objects. It also discusses more advanced servlet topics like session tracking, filters, lifecycle events, and concurrency handling.
El documento introduce las JavaServer Pages (JSP), una tecnología que permite separar la lógica de negocio de la presentación en aplicaciones web. JSP utiliza etiquetas para incrustar código Java en páginas HTML y generar contenido dinámico. Las páginas JSP se compilan en servlets Java para procesar solicitudes y responder con páginas HTML, lo que mejora la velocidad y escalabilidad con respecto a otras tecnologías como ASP. El documento también explica cómo manejar formularios y crear componentes reutiliz
1) Los servlets y JSPs son módulos que amplían las capacidades de los servidores web orientados a petición-respuesta, permitiendo generar páginas dinámicas en Java.
2) Los servlets usan los métodos doGet y doPost para procesar solicitudes HTTP y devolver respuestas, mientras que las JSPs permiten combinar código estático y dinámico en un mismo archivo para generar contenido.
3) Tanto los servlets como las JSPs pueden acceder a la solicitud, sesión, y otros objetos para proces
Este documento presenta un taller de Java avanzado para empresas y profesionales. El taller cubre temas como Servlets, JSP, EJB, Struts y conclusiones. Cada tema introduce conceptos clave del desarrollo web como contenedores, roles, componentes y la estructura de una aplicación web empaquetada.
Java Server Pages (JSP) es una tecnología que permite crear páginas web dinámicas usando Java como lenguaje de programación. JSP combina la potencia de Java en el servidor con la flexibilidad de HTML en el navegador. El código JSP se compila en código Java de servlets que generan páginas HTML dinámicas en respuesta a solicitudes del cliente.
Este documento presenta la agenda y objetivos de la primera sesión del curso de Programación I impartido por el Ingeniero Carlos Quinto. Se introducen conceptos básicos relacionados a Internet, como dominios, URL, HTTP y herramientas que se utilizarán como Eclipse, Tomcat, MySQL. También se explica la estructura de aplicaciones web en Tomcat y la creación de servlets.
El documento describe la introducción de los servlets en 1996 para añadir funcionalidad dinámica a los servidores web. Los servlets se ejecutan dentro de un proceso simple para cada petición, reduciendo la sobrecarga. Una desventaja es que los cambios estáticos en la página requieren recompilar el servlet. Los servlets se escriben usando la API Servlet y el método service() maneja las peticiones y respuestas.
Este documento discute cómo construir aplicaciones web combinando diferentes tecnologías como servlets, JSP y JavaBeans. Presenta dos arquitecturas principales: una centrada en páginas que coloca la lógica en las páginas JSP, y otra basada en MVC que separa la lógica, la vista y el controlador, asignando servlets al controlador, JSP a la vista y JavaBeans al modelo. Esta segunda arquitectura es más escalable y modular.
El documento proporciona información sobre el uso de JavaBeans en JSP. Explica cómo declarar e instanciar JavaBeans usando <jsp:useBean>, establecer y obtener propiedades de los beans con <jsp:setProperty> y <jsp:getProperty>, y los diferentes ámbitos de alcance que pueden tener los beans como page, request, session y application.
Este documento ofrece consejos para optimizar un sitio web de WordPress para motores de búsqueda. Recomienda configurar el archivo robots.txt para bloquear rastreo de URLs innecesarias, generar un sitemap.xml, editar el archivo .htaccess para redirecciones y compresión, y usar plugins para SEO, imágenes, velocidad y limpieza de base de datos. También sugiere añadir contenido a páginas como la home y categorías que solo muestran listados, y ofuscar enlaces para optimizar distribución de enlace
El documento habla sobre el .NET Framework. Explica que es la parte más importante de la plataforma .NET e incluye un entorno de ejecución común, un compilador JIT y librerías de sistema. También menciona que existen servidores .NET que pueden usarse junto con el framework para facilitar el desarrollo de aplicaciones empresariales, como SQL Server o Exchange Server. Compara .NET con J2EE, señalando que este último es un estándar, mientras que .NET es un producto.
Este documento presenta una introducción a las tecnologías web ASP.NET. Explica las diferencias entre HTML y ASP.NET, así como los conceptos clave de HTTP, formularios HTML, procesamiento en el servidor, ASP vs ASP.NET, y las ventajas de ASP.NET como la compilación, independencia del lenguaje de programación, y encapsulamiento a través de controles. También describe los componentes principales de una aplicación ASP.NET como páginas ASPX, archivos code-behind, y archivos de configuración.
Este documento proporciona una introducción al framework Struts para el desarrollo web. Explica conceptos clave como MVC, el modelo, la vista y el controlador. También cubre la instalación de Struts y conceptos como action forms, action mappings, pools de conexiones y mensajes internacionalizados.
Este documento proporciona una introducción a las páginas JSP (JavaServer Pages). Explica que las JSP permiten combinar código HTML estático con código generado dinámicamente. Describe las ventajas de las JSP y las compara con otras tecnologías como ASP, ASP.NET y servlets. Además, explica la sintaxis básica de las JSP, incluyendo expresiones, scriptlets, declaraciones y directivas.
Este documento introduce los conceptos básicos de JavaServer Pages (JSP). JSP permite crear páginas web dinámicas mediante la incorporación de código Java en archivos con extensión .jsp. Al solicitar una página JSP, el servidor ejecuta el código Java y genera una página HTML estática para el cliente. El documento explica los componentes de JSP como expresiones, declaraciones, etiquetas y directivas, y provee un ejemplo sencillo de una página JSP.
WebUtil de Oracle Forms permite aumentar la funcionalidad de aplicaciones web desarrolladas con Oracle Forms al aprovechar recursos del cliente como manipulación de archivos, ejecución de comandos del sistema operativo y transferencia de archivos entre el cliente y el servidor. WebUtil está compuesto de librerías PL/SQL, Java y componentes que facilitan la interacción con el navegador y el sistema operativo del cliente.
Este documento habla sobre las diferentes formas de manipular el contenido, atributos y estilos de elementos HTML usando JavaScript. Explica que JavaScript se puede agregar dentro de tags <script> en el HTML, o en archivos externos para separar el código de la estructura. También describe varias opciones para mostrar mensajes o resultados en JavaScript como innerHTML, write, alert y console.
Este documento describe los componentes fundamentales de Java EE y su arquitectura. Explica que Java EE simplifica la creación de aplicaciones empresariales mediante el uso de componentes como servlets, JSP, EJB y aplicaciones cliente. Además, describe cómo estos componentes se comunican entre sí a través de protocolos como HTTP y cómo se empaquetan y despliegan las aplicaciones Java EE. Finalmente, proporciona detalles sobre cómo Java EE 5 simplifica el desarrollo mediante el uso de anotaciones.
El documento explica conceptos clave relacionados con el desarrollo web como HTML, CSS, JavaScript, PHP, ASP, JSP, .NET y Java EE. Define cada tecnología y describe sus funciones y usos principales. También introduce conceptos de interoperabilidad web y servicios web mediante el uso de estándares como SOAP.
El documento habla sobre lenguajes de programación del lado del cliente como JavaScript y del lado del servidor como PHP y ASP. Explica que JavaScript se ejecuta en el navegador del cliente para agregar interactividad a las páginas web, mientras que PHP y ASP se ejecutan en el servidor para generar páginas dinámicas antes de enviarlas al cliente. También compara las ventajas e inconvenientes de la programación del lado del cliente y del servidor.
El plan de evaluación incluye cinco tareas: presentaciones en línea, línea curricular, presentación Power Point, uso del procesador de texto Write, y un proyecto ecológico.
The document discusses the Serbian Wordnet project which aims to develop a lexical semantic network for the Serbian language similar to Princeton WordNet. It provides details on the status of the Serbian Wordnet in 2004 according to the BalkaNet project report and its status in 2007, noting increases in the number of synsets, literals, and average number of senses per literal. The Serbian Wordnet project is developing a lexical semantic resource for the Serbian language to support natural language processing applications in biomedical sciences.
El documento describe la introducción de los servlets en 1996 para añadir funcionalidad dinámica a los servidores web. Los servlets se ejecutan dentro de un proceso simple para cada petición, reduciendo la sobrecarga. Una desventaja es que los cambios estáticos en la página requieren recompilar el servlet. Los servlets se escriben usando la API Servlet y el método service() maneja las peticiones y respuestas.
Este documento discute cómo construir aplicaciones web combinando diferentes tecnologías como servlets, JSP y JavaBeans. Presenta dos arquitecturas principales: una centrada en páginas que coloca la lógica en las páginas JSP, y otra basada en MVC que separa la lógica, la vista y el controlador, asignando servlets al controlador, JSP a la vista y JavaBeans al modelo. Esta segunda arquitectura es más escalable y modular.
El documento proporciona información sobre el uso de JavaBeans en JSP. Explica cómo declarar e instanciar JavaBeans usando <jsp:useBean>, establecer y obtener propiedades de los beans con <jsp:setProperty> y <jsp:getProperty>, y los diferentes ámbitos de alcance que pueden tener los beans como page, request, session y application.
Este documento ofrece consejos para optimizar un sitio web de WordPress para motores de búsqueda. Recomienda configurar el archivo robots.txt para bloquear rastreo de URLs innecesarias, generar un sitemap.xml, editar el archivo .htaccess para redirecciones y compresión, y usar plugins para SEO, imágenes, velocidad y limpieza de base de datos. También sugiere añadir contenido a páginas como la home y categorías que solo muestran listados, y ofuscar enlaces para optimizar distribución de enlace
El documento habla sobre el .NET Framework. Explica que es la parte más importante de la plataforma .NET e incluye un entorno de ejecución común, un compilador JIT y librerías de sistema. También menciona que existen servidores .NET que pueden usarse junto con el framework para facilitar el desarrollo de aplicaciones empresariales, como SQL Server o Exchange Server. Compara .NET con J2EE, señalando que este último es un estándar, mientras que .NET es un producto.
Este documento presenta una introducción a las tecnologías web ASP.NET. Explica las diferencias entre HTML y ASP.NET, así como los conceptos clave de HTTP, formularios HTML, procesamiento en el servidor, ASP vs ASP.NET, y las ventajas de ASP.NET como la compilación, independencia del lenguaje de programación, y encapsulamiento a través de controles. También describe los componentes principales de una aplicación ASP.NET como páginas ASPX, archivos code-behind, y archivos de configuración.
Este documento proporciona una introducción al framework Struts para el desarrollo web. Explica conceptos clave como MVC, el modelo, la vista y el controlador. También cubre la instalación de Struts y conceptos como action forms, action mappings, pools de conexiones y mensajes internacionalizados.
Este documento proporciona una introducción a las páginas JSP (JavaServer Pages). Explica que las JSP permiten combinar código HTML estático con código generado dinámicamente. Describe las ventajas de las JSP y las compara con otras tecnologías como ASP, ASP.NET y servlets. Además, explica la sintaxis básica de las JSP, incluyendo expresiones, scriptlets, declaraciones y directivas.
Este documento introduce los conceptos básicos de JavaServer Pages (JSP). JSP permite crear páginas web dinámicas mediante la incorporación de código Java en archivos con extensión .jsp. Al solicitar una página JSP, el servidor ejecuta el código Java y genera una página HTML estática para el cliente. El documento explica los componentes de JSP como expresiones, declaraciones, etiquetas y directivas, y provee un ejemplo sencillo de una página JSP.
WebUtil de Oracle Forms permite aumentar la funcionalidad de aplicaciones web desarrolladas con Oracle Forms al aprovechar recursos del cliente como manipulación de archivos, ejecución de comandos del sistema operativo y transferencia de archivos entre el cliente y el servidor. WebUtil está compuesto de librerías PL/SQL, Java y componentes que facilitan la interacción con el navegador y el sistema operativo del cliente.
Este documento habla sobre las diferentes formas de manipular el contenido, atributos y estilos de elementos HTML usando JavaScript. Explica que JavaScript se puede agregar dentro de tags <script> en el HTML, o en archivos externos para separar el código de la estructura. También describe varias opciones para mostrar mensajes o resultados en JavaScript como innerHTML, write, alert y console.
Este documento describe los componentes fundamentales de Java EE y su arquitectura. Explica que Java EE simplifica la creación de aplicaciones empresariales mediante el uso de componentes como servlets, JSP, EJB y aplicaciones cliente. Además, describe cómo estos componentes se comunican entre sí a través de protocolos como HTTP y cómo se empaquetan y despliegan las aplicaciones Java EE. Finalmente, proporciona detalles sobre cómo Java EE 5 simplifica el desarrollo mediante el uso de anotaciones.
El documento explica conceptos clave relacionados con el desarrollo web como HTML, CSS, JavaScript, PHP, ASP, JSP, .NET y Java EE. Define cada tecnología y describe sus funciones y usos principales. También introduce conceptos de interoperabilidad web y servicios web mediante el uso de estándares como SOAP.
El documento habla sobre lenguajes de programación del lado del cliente como JavaScript y del lado del servidor como PHP y ASP. Explica que JavaScript se ejecuta en el navegador del cliente para agregar interactividad a las páginas web, mientras que PHP y ASP se ejecutan en el servidor para generar páginas dinámicas antes de enviarlas al cliente. También compara las ventajas e inconvenientes de la programación del lado del cliente y del servidor.
El plan de evaluación incluye cinco tareas: presentaciones en línea, línea curricular, presentación Power Point, uso del procesador de texto Write, y un proyecto ecológico.
The document discusses the Serbian Wordnet project which aims to develop a lexical semantic network for the Serbian language similar to Princeton WordNet. It provides details on the status of the Serbian Wordnet in 2004 according to the BalkaNet project report and its status in 2007, noting increases in the number of synsets, literals, and average number of senses per literal. The Serbian Wordnet project is developing a lexical semantic resource for the Serbian language to support natural language processing applications in biomedical sciences.
The document discusses subject pronouns and the verb "to be" (ser) in Spanish. It explains the first, second, and third person singular and plural subject pronouns in Spanish (yo, tú, él, ella, Ud., nosotros, vosotros, ellos, ellas, Uds.) and how they correspond to the English subject pronouns (I, you, he, she, we, you all, they). It also covers the conjugations of the verb "to be" (ser) and how it agrees with each subject pronoun.
Este documento fornece instruções passo-a-passo para criar uma conta no Google Plus, incluindo como fazer login, preencher dados de perfil, adicionar foto, assistir vídeo tutorial e seguir a página do INEPAD.
Haciendo Ciencia en Abierto / Making Open ScienceJavier Otegui
Mi presentación como ponente invitado en el Máster en Biodiversidad, Paisajes y Gestión Sostenible de la @UNAV, el 9 de Enero de 2014
My talk as guest speaker at the Biodiversity, Landscapes and Sustainable Management Master's degree, at @UNAV, Jan 9th 2014 (slides in Spanish)
La persona descrita disfruta ayudando a otros y cumpliendo con sus responsabilidades de manera puntual. También le gusta compartir tiempo con amigos y familia, tomar sus propias decisiones de forma justa y ser obediente con su madre. Sin embargo, a veces le cuesta escuchar consejos, pedir disculpas cuando comete errores y controlar su mal genio.
Los cinco reinos de la naturaleza son: 1) Monera (bacterias), 2) Protista (protozoos y algas unicelulares), 3) Fungi (hongos), 4) Plantae (plantas), 5) Animalia (animales). La alumna Jennyfer Giraldo Ysuiza debe describir estos cinco reinos como parte de un webquest para la clase de biología del Lic. William Vegazo Muro en el grado 1 sección B.
This document discusses the philosophical foundations of the 2013 curriculum in Indonesia. It explains that curriculum is influenced by social forces, philosophical positions, and educational leadership of the time. The curriculum committee should be aware of major philosophical principles like essentialism and progressivism. The 2013 curriculum is based on an eclectic approach that combines elements of perennialism, essentialism, humanism, progressivism, and social reconstruction. It aims to develop students' potentials and prepare them for current and future life through competency-based and standards-based learning that emphasizes a balance between soft and hard skills.
Relieves del paisaje 4º (conocimiento del medio tema 2)Eva Maria Garcia
The document discusses different types of landforms that provide relief on the earth's surface and subsurface water relief, including ravines, terraces, waterways, and underground aquifers.
Este documento presenta la visión, misión, principios, valores y promoción de Yajhaira Manzano Campo. Su visión es ser una gran profesional en mercadeo y crear su propia empresa. Su misión es aprovechar su capacidad de razonamiento y seguridad en sí misma para alcanzar grandes metas con la ayuda de su familia y Dios. Sus principios incluyen la fe, el respeto y mejorar constantemente.
Empresa con amplia experiencia profesional y creativa. En reportaje social, os hacemos un reportaje con fotos exclusivas y una maquetación única. En Diseño hacemos carteles y web, todo siempre personalizado y con mucha distinción, tu campaña publicitaria, será única y llamativa. Nuestros clientes son nuestro mejor aval, ellos son los que nos hacen crecer día a día.
* Reportajes de Bodas,Comuniones,Bautizos.
* Diseño Web
* Publicidad
* Fotografía: Restauraciones,Personalizaciones
O documento apresenta um resumo da Constituição Federal elaborado por Vítor Cruz, professor de Direito Constitucional. O resumo é gratuito e foi feito com o objetivo de servir como material de revisão para concursos públicos. É dividido em tópicos que resumem os principais pontos da Constituição de forma concisa.
[ES] Introdución al desarrollo de aplicaciones web en javaEudris Cabrera
Este documento introduce los conceptos básicos de desarrollo web con Java, incluyendo servlets y Java Server Pages (JSP). Explica que los servlets son objetos que generan contenido dinámico y corren en un contenedor como Tomcat, mientras que las JSP permiten usar código Java en páginas web para generar contenido dinámico. También incluye demostraciones de cómo crear y desplegar servlets y JSP simples.
[ES] Introducción a las Aplicaciones Web con JavaEudris Cabrera
Este documento presenta una introducción a las aplicaciones web con Java. Explica conceptos clave como el ecosistema Java, aplicaciones web, contenedores web y tecnologías como servlets, Java Server Pages y scriptlets. El objetivo es proveer una visión general de las tecnologías Java disponibles para el desarrollo de aplicaciones web, destacando las normas importantes. El documento también incluye la biografía y contactos del autor.
Este documento presenta una introducción a la programación avanzada para desarrollo web. Explica conceptos clave como servidores web, contenedores web, servlets, JSP y aplicaciones web con Java. También incluye una guía rápida de HTML y una descripción de la estructura y configuración típica de aplicaciones web con Java.
ASP.NET es un framework para desarrollar aplicaciones web que permite separar la interfaz de usuario de la lógica del sitio y procesar datos en el servidor. Los Web Forms son la parte principal de ASP.NET y permiten crear páginas dinámicas que se compilan y ejecutan en el servidor generando HTML para el cliente. ASP.NET incluye controles que encapsulan funcionalidad común y facilitan el desarrollo de aplicaciones web ricas e interactivas.
Introducción al desarrollo de aplicaciones web en JavaEudris Cabrera
Este documento presenta una introducción al desarrollo de aplicaciones web con Java. Explica conceptos clave como servlets, Java Server Pages (JSP), contenedores web y tecnologías estándar para aplicaciones web en Java. El objetivo es proveer una visión general de las tecnologías Java disponibles para el desarrollo de aplicaciones web, destacando normas importantes como servlets, JSP y contenedores web.
El documento presenta conceptos clave sobre programación web con Java, incluyendo arquitectura REST, métodos HTTP como GET y POST, Java Server Pages (JSP), servlets, y sockets. Explica cómo JSP permite incluir código Java en páginas web y cómo los servlets interactúan con las solicitudes de clientes y respuestas de servidores. También describe el ciclo de vida de los servlets y métodos comunes como doGet() y doPost().
[ES] Fundamentos de Java Enterprise Edition Eudris Cabrera
Este documento introduce los conceptos fundamentales de Java Enterprise Edition (JEE). Explica que JEE es una plataforma para desarrollar aplicaciones empresariales en Java que se ejecutan en servidores de aplicaciones. También describe las cuatro capas principales de la arquitectura JEE y los tipos de contenedores como el contenedor web y el contenedor EJB. Finalmente, menciona que el servidor de aplicaciones más utilizado es WebLogic.
El documento define las tecnologías de sitios web dinámicos y páginas web. Explica que las páginas estáticas siempre se ven igual mientras que las páginas dinámicas pueden cambiar su contenido basado en las acciones de los usuarios. También describe lenguajes de programación del lado del servidor como ASP.NET y PHP que permiten crear páginas web dinámicas conectadas a bases de datos.
Este documento presenta una aplicación de ejemplo en Java Server Faces (JSF) que permite personalizar los colores de un currículum vitae. La aplicación incluye páginas para personalizar los colores, mostrar mensajes de error si los colores seleccionados son iguales, y previsualizar el CV con los colores y datos seleccionados. El documento explica cada archivo JSP que compone la aplicación y muestra fragmentos de código para ilustrar el uso de etiquetas JSF.
Este documento describe varias tecnologías para el desarrollo de aplicaciones web como AJAX, JavaScript, JSP, servlets y JSF. Explica que AJAX permite actualizar partes de una página web sin recargar la página completa mediante comunicación asíncrona con el servidor. JSP y servlets permiten crear páginas web dinámicas usando Java como lenguaje de programación. JSF es un framework MVC que provee componentes para crear interfaces gráficas usando objetos Java como modelo y métodos como controladores.
1) ASP.NET es un marco de trabajo de programación que se puede usar para crear aplicaciones web dinámicas utilizando controles de servidor y aprovechando las ventajas de .NET Framework como mejor rendimiento y compatibilidad con herramientas. 2) Los web forms de ASP.NET permiten crear y usar controles de interfaz de usuario reutilizables y estructurar la lógica de la página de forma ordenada. 3) Es posible usar bloques de código <% %> y controles de servidor con el atributo runat="server" para agregar funcionalidad
Este documento presenta un taller de Java avanzado que incluye temas como Servlets, JSP, Javabeans, EJB y Struts. Una sección detalla los conceptos de JSP, incluyendo sus beneficios sobre otras tecnologías como ASP y PHP, así como ejemplos de uso de expresiones, scriptlets y declaraciones en JSP.
Este documento presenta la arquitectura Java EE y el contenedor Tomcat. Describe la estructura de Java EE, incluyendo servlets, JSP, EJB y APIs como JDBC. Explica que Tomcat es un contenedor de servlets/JSP ligero y que forma parte de una aplicación Java EE completa junto con contenedores EJB y otros componentes. También resume las cuatro capas de la arquitectura Java EE.
Para acceder a una base de datos desde el web se requiere de un navegador, servidor web, software de procesamiento como un programa CGI que lee la entrada de datos del cliente y variables de ambiente, y una interfaz SQL que procesa las consultas a la base de datos y los resultados. El software prepara las consultas SQL recibidas de los datos de entrada y las envía a la interfaz para su procesamiento.
Este documento presenta una introducción a JavaScript básico. Explica que JavaScript es un lenguaje de programación interpretado que se utiliza principalmente para dar dinamismo e interactividad a las páginas web. Describe algunas aplicaciones comunes de JavaScript como la validación de formularios y la creación de menús dinámicos. También cubre temas como cómo se inserta JavaScript en HTML y las características básicas del lenguaje como variables, operadores y estructuras de control de flujo.
JSP es una tecnología para crear páginas web dinámicas con Java que permite incorporar código Java en páginas con formato HTML. El código Java se ejecuta en el servidor para generar contenido dinámico, mientras que el HTML se envía al usuario. JSP permite desarrollar aplicaciones web multiplataforma que se ejecutan en diversos servidores usando Java.
WebUtil es una utilidad que proporciona funcionalidad del lado del cliente para formas de Oracle, incluyendo beans Java y una API para tareas como E/S de texto y comunicación con el navegador. Su objetivo es permitir que los desarrolladores completen tareas complejas en el navegador mediante la codificación en PL/SQL. Incluye una biblioteca de objetos Java y una API PL/SQL para extender la funcionalidad de las formas. Un ejemplo es reemplazar las funciones TEXT_IO del servidor por versiones del lado del cliente.
El documento describe las propiedades de un sitio web creado con ASP.NET. Explica que las propiedades definen el comportamiento del sitio y pueden ser modificadas por el administrador. También describe cómo ASP.NET permite crear sitios web dinámicos combinando HTML, scripts y otros componentes de manera más sencilla que tecnologías previas. Finalmente, explica cómo configurar las propiedades relacionadas con el registro y almacenamiento de logs de actividad para hacer seguimiento y análisis del tráfico en un sitio.
Este documento describe varias tecnologías web como AJAX, JSP, CGI, ASP, ASP.NET y JSF. También describe lenguajes de programación como HTML, JavaScript, XML, CSS, SQL, PHP, Java, C++, C# y Python. Además, describe protocolos como REST API, DNS, HTTP, HTTPS y URL. Finalmente, describe librerías como jQuery, React, Bootstrap y GWT así como preprocesadores y frameworks.
Google ofrece diferentes tipos de búsquedas como búsqueda de frases exactas, búsqueda con restricciones de palabras, búsqueda por rangos, búsqueda de definiciones, búsqueda en diferentes tipos de archivos y sitios específicos, y búsqueda de temas de tendencias para encontrar información relevante.
Este documento proporciona una introducción a Java, incluyendo una breve historia de su desarrollo y una descripción de sus características principales. También describe los componentes clave del Java Development Kit (JDK), como el compilador javac, el intérprete Java y las herramientas para ejecutar y depurar applets. Finalmente, introduce conceptos básicos de programación orientada a objetos en Java como clases, objetos, métodos y herencia.
Este documento presenta una introducción a los servlets de Java. Explica las diferencias entre las tecnologías CGI y Servlet, las características clave de los servlets como su ciclo de vida y el API Servlet. También incluye ejemplos de cómo crear y ejecutar un servlet simple, y cómo usar cookies y sesiones para rastrear el estado de los usuarios.
Este documento proporciona una introducción al lenguaje de programación Java. Explica la historia y características principales de Java como su orientación a objetos, tipos de datos, clases, métodos, herencia y paquetes. También describe conceptos básicos como variables, operadores, estructuras de control, excepciones y entrada/salida.
1) El documento describe el origen y desarrollo del lenguaje de programación Java. Java fue creado originalmente por James Gosling en Sun Microsystems para controlar dispositivos electrónicos domésticos. 2) El lenguaje se llamó inicialmente Oak y fue utilizado en proyectos como el Proyecto Green y Video On Demand antes de ser renombrado a Java. 3) Java es un lenguaje independiente de plataforma que se compila a bytecodes ejecutables en cualquier máquina virtual Java.
Este documento presenta una introducción a Java. Explica brevemente la historia de Java y cómo surgió para dotar de mayor dinamismo a las páginas web a través de los applets. También define a Java como un lenguaje de programación orientado a objetos desarrollado por Sun y cuya sintaxis está basada en C++, lo que facilita la migración desde este lenguaje.
Este documento introduce Java 2 Micro Edition (J2ME), la versión de Java diseñada para dispositivos móviles. Explica los nuevos conceptos de configuración y perfiles en J2ME, y describe cómo crear un MIDlet simple que herede de la clase MIDlet e implemente los métodos startApp(), pauseApp() y destroyApp(). También cubre los pasos de compilación y preverificación necesarios para ejecutar un MIDlet en un dispositivo móvil.
Este documento proporciona una introducción a los conceptos básicos de la programación orientada a objetos en Java, incluyendo definiciones de objetos, clases, mensajes y herencia. Explica que los objetos contienen variables y métodos, las clases son prototipos que definen objetos de cierto tipo, los objetos se comunican mediante mensajes, y la herencia permite que una clase herede variables y métodos de otra clase.
Este documento presenta un curso introductorio sobre Java. Cubre temas como qué es Java, sus características como lenguaje de objetos e independiente de la plataforma, y estructuras básicas como clases, métodos y objetos. También incluye ejemplos de código Java y explica conceptos como encapsulamiento y herencia. El documento está organizado en varios capítulos que profundizan sobre estas ideas a lo largo del curso.
Este documento presenta una introducción al lenguaje de programación Java. Explica que Java fue creado para ser sencillo, orientado a objetos, distribuido, robusto, seguro y portable. También describe brevemente el entorno de desarrollo Java 2 Standard Edition (J2SDK) distribuido por Sun Microsystems.
Este documento trata sobre el desarrollo de software en Java. Explica diferentes aspectos del lenguaje Java como aplicaciones, applets y eventos, utilizando herramientas como Microsoft Visual J++ 6 y JBuilder. El objetivo es enseñar programación orientada a objetos, desarrollo de aplicaciones y applets Java, y el uso de interfaces gráficas, hilos y acceso a ficheros.
Este documento presenta un libro sobre el uso de Java2D para dibujar figuras, imágenes y texto en dos dimensiones. El libro explica conceptos clave como Graphics2D y sus atributos para el renderizado, así como cómo dibujar figuras geométricas, fuentes de texto, y trabajar con imágenes. Además, cubre temas como el sistema de coordenadas, transformaciones, composición y el tratamiento del color en Java2D.
Este documento describe el origen y desarrollo de Java. Comenzó como un lenguaje para dispositivos electrónicos de consumo pero luego se adaptó para el desarrollo de aplicaciones web. Java ofrece características como ser simple, orientado a objetos, distribuido, robusto, independiente de la arquitectura y seguro.
Este documento es una guía para la introducción al lenguaje de programación Java. Explica los conceptos básicos de Java como la programación orientada a objetos, las clases, los objetos, herencia y polimorfismo. También cubre temas como tipos de datos, operadores, sentencias de control, excepciones, interfaces, hilos, entrada/salida, interfaz gráfica de usuario y redes. El documento proporciona numerosos ejemplos de código Java para ilustrar los conceptos.
Este documento presenta un curso introductorio sobre programación en Java. Explica conceptos básicos como qué es Java, el entorno de desarrollo, variables, operadores, estructuras de control y una clase de ejemplo completa con varias clases y una interfaz para mostrar formas geométricas. El documento contiene 10 secciones que cubren estos temas de manera detallada con ejemplos para aprender los fundamentos de Java.
El documento presenta 15 problemas de programación resueltos con pseudocódigo. Cada problema presenta un desafío diferente relacionado con bucles y toma de decisiones, como imprimir números en un rango, contar números pares e impares, determinar si un número es positivo o negativo, e identificar el mayor y menor de una serie de números introducidos. El pseudocódigo proporciona la lógica algorítmica para resolver cada problema de manera concisa y estructurada.
1. Servlets y JSP
Servlets y JavaServer Pages (JSP) 1.0
Indice de Contenidos Servlets
� I ntroducción a los Servlets y J SP
� ¿Qué es un Servlet J ava?
� ¿Qué ventajas tienen los Servlets J ava frente al CGI tradicional?
� ¿Qué es J SP?
� ¿Cúales son las Ventajas de J SP?
� I nstalación y Configuración
� Obtener e I nstalar las clases Servlet y J SP
� Obtener un Servidor Web Compatible con Servlets o Motor de Servlets
� Primeros Servlets
� Estructura Básica de un Servlet
� Un Sencillo Servlet que Genera Texto Normal
� Compilar e I nvocar al Servelt
� Un Sencillo Servelt que Genera HTML
� Algunas utilidades HTML sencillas para Servlets
� Procesar la Solicitud: Formulario de Datos
� I ntroducción (Format, URL-encoding, GET, POST)
� Ejemplo: Leer Parámetros Específicos
� Ejemplo: Hacer una Tabla de todos los Parámetros
� Procesar la Solicitud: Cabeceras de Solicitud HTTP
�Cabeceras de Solicitud Comunes y sus Significados
� Leer Cabeceras desde Servlets
� Ejemplo: Hacer una Tabla con todas las Cabeceras
� Acceder a Variables CGI Estándards
�Las Variables CGI , sus Significados y sus Equivalentes Servlet
� Ejemplo: Hacer una Tabla con todas las Variables CGI
� Generar la Respuesta: Códigos de Estado HTTP
� I ntroducción: Códigos de Estado y Mensajes
� Seleccionar Códigos de Estado desde Servlets
� Códigos de Estado HTTP 1.1 y sus Significados
2. �Ejemplo: Un Motor de Búsqueda
� Generar la Respuesta: Cabeceras de Respuesta HTTP
�I ntroducción
� Cabeceras de Respuesta Comunes y sus Significados
� Ejemplo: Arráncar un cálculo de larga duración, mostrar resultados
parciales y periódicamente mostrar actualizaciones con nuevos datos
� Manejar Cookies
�I ntroducción: Como usar (y abusar de) las cookies
� El API Servlet Cookie
� Algunas utilidades de Cookies
� Ejemplo: Un I nterface de Motor de Búsqueda Persoalizado
� Seguimiento de Sesión
� I ntroducción al Seguimiento de Sesión
� El API Session Tracking
� Ejemplo
� J avaServer Pages (J SP)
� I ntroducción
� Sumario de Síntaxis
� Plantilla de Texto (HTML Dinámico)
� Elementos de Script J SP: Expresiones, Scriptlets, y Declaraciones
� Directivas J SP
� Ejemplo de uso de Elementos Script y Directivas
� Variables Predefinidas
� Acciones J SP
� Convenciones de Comentarios y Caracteres de Escape J SP
Indice de Contenidos JSP
� I ntrodución a J SP
� Directivas J SP
� El Principio
� Manejar Formularios HTML
� Usar Elementos de Script
� Manejar Excepciones
Ozito
3. Servlets y JSP
Introducción
1. ¿Qué son los Servlets J ava?
2. ¿Qué Ventajas tienen los Servlets Frente al CGI "Tradicional"?
3. ¿Qué es J SP?
4. ¿Qué Ventajas Tiene J SP?
1. ¿Qué son los Servlets Java?
Los Servlets son las respuesta de la tecnología J ava a la programación CGI . Son
programas que se ejecutan en un servidor Web y construyen páginas Web.
Construir páginas Web al vuelo es útil (y comunmente usado) por un número de
razones:
� La página Web está basada en datos envíados por el usuario. Por
ejemplo, las páginas de resultados de los motores de búsqueda se generan de
esta forma, y los programas que procesan pedidos desde sites de comercio
electrónico también.
� Los datos cambian frecuentemente. Por ejemplo, un informe sobre el
tiempo o páginas de cabeceras de noticias podrían construir la página
dinámicamente, quizás devolviendo una página previamente construida y
luego actualizandola.
� Las páginas Web que usan información desde bases de datos
corporativas u otras fuentes. Por ejemplo, usaríamos esto para hacer una
página Web en una tienda on-line que liste los precios actuales y el número
de artículos en stock.
2. ¿Cuáles son las Ventajas de los Servlets sobre el
CGI "Tradicional"?
Los Servlets J ava son más eficientes, fáciles de usar, más poderosos, más
portables, y más baratos que el CGI tradicional y otras muchas tecnologías del tipo
CGI . (y lo que es más importante, los desarrolladores de servlets cobran más que
los programadores de Perl : -).
� Eficiencia.
Con CGI tradicional, se arranca un nuevo proceso para cada solicitud HTTP. Si
4. el programa CGI hace una operación relativamente rápida, la sobrecarga del
proceso de arrancada puede dominar el tiempo de ejecución. Con los Servlets,
la máquina Virtual J ava permanece arrancada, y cada petición es manejada
por un thread J ava de peso ligero, no un pesado proceso del sistema
operativo. De forma similar, en CGI tradicional, si hay N peticiones
simultáneas para el mismo programa CGI , el código de este problema se
cargará N veces en memoria. Sin embargo, con los Servlets, hay N threads
pero sólo una copia de la clase Servlet. Los Servelt también tienen más
alternativas que los programas normales CGI para optimizaciones como los
cachés de cálculos prévios, mantener abiertas las conexiones de bases de
datos, etc.
� Conveniencia.
Hey, tu ya sabes J ava. ¿Por qué aprender Perl? J unto con la conveniencia de
poder utilizar un lenguaje familiar, los Servlets tienen una gran infraestructura
para análisis automático y decodificación de datos de formularios HTML, leer y
seleccionar cabeceras HTTP, manejar cookies, seguimiento de sesiones, y
muchas otras utilidades.
� Potencia.
Los Servlets J ava nos permiten fácilmente hacer muchas cosas que son
difíciles o imposibles con CGI normal. Por algo, los servlets pueden hablar
directamente con el servidor Web. Esto simplifica las operaciones que se
necesitan para buscar imágenes y otros datos almacenados en situaciones
estándards. Los Servlets también pueden compartir los datos entre ellos,
haciendo las cosas útiles como almacenes de conexiones a bases de datos
fáciles de implementar. También pueden mantener información de solicitud en
solicitud, simplicando cosas como seguimiento de sesión y el caché de
cálculos anteriores.
� Portable.
Los Servlets están escritos en J ava y siguen un API bien estándarizado.
Consecuentemente, los servlets escritos, digamos en el servidor I -Planet
Enterprise, se pueden ejecutar sin modificarse en Apache, Microsoft I I S, o
WebStar. Los Servlets están soportados directamente o mediante plug-in en
la mayoría de los servidores Web.
� Barato.
Hay un número de servidores Web gratuitos o muy baratos que son buenos
para el uso "personal" o el uso en sites Web de bajo nivel. Sin embargo, con
la excepción de Apache, que es gratuito, la mayoría de los servidores Web
comerciales son relativamente caros. Una vez que tengamos un servidor Web,
no importa el coste del servidor, añadirle soporte para Servlets (si no viene
preconfigurado para soportarlos) es gratuito o muy barato.
5. 3. ¿Qué es JSP?
J ava Server Pages (J SP) es una tecnología que nos permite mezclar HTML estático
con HTML generado dinámicamente. Muchas páginas Web que están construidas
con programas CGI son casi estáticas, con la parte dinámica limitada a muy pocas
localizaciones. Pero muchas variaciones CGI , incluyendo los servlets, hacen que
generemos la página completa mediante nuestro programa, incluso aunque la
mayoría de ella sea siempre lo mismo. J SP nos permite crear dos partes de forma
separada. Aquí tenemos un ejemplo:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD><TITLE>Welcome to Our Store</TITLE></HEAD>
<BODY>
<H1>Welcome to Our Store</H1>
<SMALL>Welcome,
<!-- User name is "New User" for first-time visitors -->
<% out.println(Utils.getUserNameFromCookie(request)); %>
To access your account settings, click
<A HREF="Account-Settings.html">here.</A></SMALL>
<P>
Regular HTML for all the rest of the on-line store's Web page.
</BODY></HTML>
4.¿Cuáles son las Ventajas de JSP?
� Contra Active Server Pages (ASP).
ASP es una tecnología similar de Microsoft. Las ventajas de J SP estan
duplicadas. Primero, la parte dinámica está escrita en J ava, no en Visual
Basic, otro lenguaje específico de MS, por eso es mucho más poderosa y fácil
de usar. Segundo, es portable a otros sistemas operativos y servidores Web
� Contra los Servlets.
J SP no nos da nada que no pudierámos en principio hacer con un servlet. Pero
es mucho más conveniente escribir (y modificar!) HTML normal que tener que
hacer un billón de sentencias println que generen HTML. Además, separando
el formato del contenido podemos poner diferentes personas en diferentes
tareas: nuestros expertos en diseño de páginas Web pueden construir el
HTML, dejando espacio para que nuestros programadores de servlets inserten
el contenido dinámico.
� Contra Server-Side I ncludes (SSI ).
SSI es una tecnología ámpliamente soportada que incluye piezas definidas
externamente dentro de una página Web estática. J SP es mejor porque nos
permite usar servlets en vez de un programa separado para generar las
6. partes dinámicas. Además, SSI , realmente está diseñado para inclusiones
sencillas, no para programas "reales" que usen formularios de datos, hagan
conexiones a bases de datos, etc.
� Contra J avaScript.
J avaScript puede general HTML dinámicamente en el cliente. Este una
capacidad útil, pero sólo maneja situaciones donde la información dinámica
está basada en el entorno del cliente. Con la excepción de las cookies, el HTTP
y el envió de formularios no están disponibles con J avaScript. Y, como se
ejecuta en el cliente, J avaScript no puede acceder a los recursos en el lado del
servidor, como bases de datos, catálogos, información de precios, etc.
Ozito
7. Servlets y JSP
Instalación y Configuración del Servidor
1. Obtener e I nstalar los Kits de Desarrollo de Servlets y J SP
2. I nstalar un Servidor Web compatible con Servlets
1. Obtener e Instalar los Kits de Desarrollo de
Servlets y JSP
Nuestro primer paso es descargar el software que implementa las especificaciones
J ava Servlet 2.1 o 2.2 y J ava Server Pages 1.0 ó 1.1. Podemos obtener una versión
gratuita de Sun, conocida como "J avaServer Web Development Kit" (J SWDK), en
http: / / java.sun.com/ products/ servlet/ .
Luego, necesitamos decirle a javac dónde encontrar las clases Servlets y J SP
cuando compilemos nuestro fichero servlet. Las instrucciones de instalación del
J SWDK explican esto, pero básicamente apuntan a poner los ficheros servlet.jar y
jsp.jar (que vienen con el J SWDK) en nuestro CLASSPATH. Si nunca antes has
tratado con el CLASSPATH, es la variable de entorno que especifica donde J ava
busca la clases. Si no es especificada, J ava busca en el directorio actual y en las
librerías estándard del sistema. Si la seleccionamos nosotros mismos necesitamos
estar seguros de incluir ".", que significa el directorio actual. Aquí tenemos un
rápido sumario de cómo seleccionarla en un par de plataformas:
Unix (C Shell)
setenv CLASSPATH .:servlet_dir/servlet.jar:servlet_dir/jsp.jar
Añadimos ":$CLASSPATH" al final de la línea setenv si nuestro CLASSPATH ya
está configurado, y queremos añadirle más directorios, no reemplazarlo. Observa
que se usan dos puntos ": " para separar directorios, mientras que Windows usa
puntos y coma. Para hacer permanente esta configuración ponemos está sentencia
dentro de nuestro fichero .cshrc.
Windows 95/98/NT
set CLASSPATH=.;servlet_dir/servlet.jar;servlet_dir/jsp.jar
8. Añadimos ";% CLASSPATH% " al final de la línea anterior si nuestro CLASSPATH
ya está configurado. Observa que usamos puntos y coma "; " para separar
directoriois, mientras que en Unix se usan dos puntos. Para hacer permanente esta
configuración ponemos esta sentencias en el fichero autoexec.bat. En Windows
NT, vamos al menú Start, seleccionamos Settings y luego Control Panel,
seleccionamos System, y Environment y luego introducimos la variable y el valor.
Finalmente, como veremos en La siguiente sección, queremos poner nuestros
servlets en paquetes para evitar conflictos de nombres con los servlets escritos por
otras personas para la misma aplicación Web o servidor. En este caso, podríamos
encontrar conveniente añadir el directorio de más alto nivel de nuestro paquete al
CLASSPATH. Puedes ver la sección Primeros Servlets para más detalles.
2. Instalar un servidor Web con Capacidad para
Servlets
Nuestro siguiente paso es obtener e instalar un servidor Web que soporte servlets
J ava, o instalar el paquete Servelt en nuestro servidor Web existente. Si estamos
usando un servidor Web actualizado, hay muchas posibilidades de que ya
tengamos todo lo que necesitamos. Debemos chequear la documentación de
nuestro servidor o ver la última lista de servidores que soportarn servlets en
http: / / java.sun.com/ products/ servlet/ industry.html. Aunque eventualmente
queramos desarrollar en un servidor de calidad comercial, cuando estamos
aprendiendo es útil tener un sistema gratuito que podemos instalar en nuestra
máquina para propósitos de desarrollo y prueba. Aquí están algunas de las
opciones más populares:
� Apache Tomcat.
Tomcat es la implementación de referencia oficial para las especificaciones
Servlet 2.2 y J SP 1.1. Puede ser usado como pequeño servidor para probar
páginas J SP y servlets, o puede integrarse en el servidor Web Apache.
Tomcat, al igual que el propio Apache es gratuito. Sin embargo, también al
igual que Apache (que es muy rápido, de gran redimiento, pero un poco difícil
de configurar e instalar), Tomcat requiere significativamente más esfuerzo
para configurarlo que los motores de servlets comerciales. Para más detalles
puedes ver http: / / jakarta.apache.org/ .
� J avaServer Web Development Kit (J SWDK).
El J SWDK es la implementación de referencia oficial para las especificaciones
Servlet 2.1 y J SP 1.0. Se usaba como pequeño servidor para probar servlets y
páginas J SP antes de desarrollar un completo servidor Web que soporta estas
tecnologías. Es gratuito y potente, pero necesita un poco de esfuerzo para
instalarlo y configurarlo. Para más detalles puedes ver
http: / / java.sun.com/ products/ servlet/ download.html.
� Allaire J Run.
9. J Run es un motor servelt y J SP que puede conectarse dentro de los servidores
Netscape Enterprise o FastTrack, de los servidores Web I I S, Microsoft
Personal Web Server, viejas versiones de Apache, O’Reilly’s WebSite, o
StarNine WebSTAR. Hay una versión gratuita limitada a cinco conexiones
simultáneas; la versión comercial elimina esta restricción y añade capacidades
como una consola de administración remota. Para más detalles puedes ver
http: / / www.allaire.com/ products/ jrun/ .
� New Atlanta’s ServletExec.
ServletExec es un rápido motor de servlets y páginas J SP que puede ser
conectado dentro de los servidores web más populares para Solaris, Windows,
MacOS, HP-UX y Linux. Podemos descargarlo y usarlo de forma gratuita, pero
muchas de sus características avanzadas y utilidades de administración
estarán desactivadas hasta que compremos una licencia. El nuevo Atlanta
también proporciona un depurador de servlets gratuito que funciona con
mucho de los I DEs más populares de J ava. Para más detalles puedes ver
http: / / newatlanta.com/ .
� Gefion's LiteWebServer (LWS).
LWS es un pequeño servidor Web gratuito que soporta Servlets versión 2.2 y
J SP 1.1. También teinen un plug-in gratuito llamado WAI CoolRunner que
añade soporte para Servlets 2.2 y J SP 1.1 a los servidores Netscape FastTrack
y Enterprise. También venden un gran número de Servlets personalizados y
componentes J SP en un paquete llamado I nstantOnline. Para más detalles
puedes ver http: / / www.gefionsoftware.com/ .
� Sun’s J ava Web Server.
Este servidor está escrito enteramente en J ava y fue uno de los primeros
servidores en soportar completamente las especificaciones servlet 2.1 y J SP
1.0. Aunque ya no estará bajo desarrollo activo porque Sun se está
concentrando en el servidor Netscape/ I -Planet, todavía es una opción popular
para aprender servlets y J SP. Para un versión de prueba gratuita puedes ver
http: / / www.sun.com/ software/ jwebserver/ try/ . Para obtener una versión
gratuita que no expira para propósitos de enseñanza en instituciones
académicas, puedes ver http: / / freeware.thesphere.com/ .
Ozito
10. Servlets y JSP
Primeros Servlets
1. Estructura Básica de un Servlet
2. Un sencillo Servlet que Genera Texto Normal
3. Un Servlet que Genera HTML
4. Utilidades de Construcción de HTML Sencillo
1. Estructura Básica de un Servlet
Aquí tenemos un servlet básico que maneja peticiones GET. Las peticiones GET, para
aquellos que no estemos familiarizados con HTTP, son peticiones hechas por el
navegador cuando el usuario teclea una URL en la línea de direcciones, sigue un enlace
desde una página Web, o rellena un formulario que no especifica un METHOD. Los
Servlets también pueden manejar peticiones POST muy fácilmente, que son generadas
cuando alguien crea un formulario HTML que especifica METHOD="POST". Los
discutiremos en una sección posterior.
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SomeServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// Use "request" to read incoming HTTP headers (e.g. cookies)
// and HTML form data (e.g. data the user entered and submitted)
// Use "response" to specify the HTTP response line and headers
// (e.g. specifying the content type, setting cookies).
PrintWriter out = response.getWriter();
// Use "out" to send content to browser
}
}
(Descarga la plantilla de código fuente -- pulsa con el botón derecho del ratón sobre el
enlace o mantén pulsada la tecla SHI FT mientras pulsas sobre el enlace).
Para ser un servlet, una clase debería extender HttpServlet y sobreescribir doGet o
doPost (o ambos), dependiendo de si los datos están siendo enviados mediante GET o
11. POST. Estos métodos toman dos argumentos: un HttpServletRequest y un
HttpServletResponse.
El HttpServletRequest tiene métodos que nos permiten encontrar información entrante
como datos de un FORM, cabeceras de peticiòn HTTP, etc. El HttpServletResponse
tiene métodos que nos permiten especificar líneas de respuesta HTTP (200, 404, etc.),
cabeceras de respuesta (Content-Type, Set-Cookie, etc.), y, todavía más importante,
nos permiten obtener un PrintWriter usado para envíar la salida de vuelta al cliente. Para
servlets sencillos, la mayoría del esfuerzo se gasta en sentencias println que generan la
página deseada. Observamos que doGet y doPost lanzan dos excepciones, por eso es
necesario incluirlas en la declaración. También observamos que tenemos que importar
las clases de los paquetes java.io (para PrintWriter, etc.), javax.servlet (para
HttpServlet, etc.), y javax.servlet.http (para HttpServletRequest y
HttpServletResponse). Finalmente, observamos que doGet y doPost son llamados
por el método service, y algunas veces queremos sobreescribir directamente el método
service, por ejemplo, para un servlet que maneje tanto peticiones GET como POST.
2. Un Sencillo Servlet que Genera Texto Normal
Aquí tenemos un servlet que sólo genera texto normal. La siguiente sección mostrará el
caso más usual donde se generará HTML.
2.1 HelloWorld.java
También puedes descargar el código fuente
package hall;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("Hello World");
}
}
2.2 Compilar e Instalar el Servlet
Debemos observar que los detalles específicos para instalar servlets varian de servidor
en servidor. Los ejemplos se han probado sobre J ava Web Server (J WS) 2.0, donde se
espera que los servlets estén en un directorio llamado servlets en el árbol de instalación
del J WS. Sin embargo, hemos situado este servlet en un paquete separado (hall) para
evitar conflictos con otros servlets del servidor; querrás hacer lo mismo si usas un
12. servidor Web que es usado por otras personas y no tiene buena estructura para "servlets
virtuales" para evitar automáticamente estos conflictos. Así, HelloWorld.java realmente
va en un sudirectorio llamado hall en el directorio servlets. Observa que la
configuración de la mayoría de los servidores, y los ejemplos de este turtorial también se
han probado usando BEA WebLogic e I BM WebSphere 3.0. WebSphere tiene un
excelente mecanismo para servlets virtuales, y no es necesario usar paquetes, sólo para
evitar conflictos de nombres con otros usuarios.
Una forma de configurar nuestro CLASSPATH es apuntar al directorio superior al que
contiene realmente nuestros servlets. Entonces podemos compilar normalmente desde
dentro del directorio. Por ejemplo, si nuestro directorio base es
C: J avaWebServer servlets y el nombre de nuestro paquete es (y por lo tanto el del
subdirectorio) es hall, y trabajamos bajo Windows, deberiamos hacer:
DOS> set CLASSPATH=C:JavaWebServerservlets;%CLASSPATH%
DOS> cd C:JavaWebServerservletshall
DOS> javac YourServlet.java
La primea parte, configura el CLASSPATH, probablemente querremos hacerlo
permanentemente, en vez de hacerlo cada que arrancamos una nueva ventana del DOS.
En Windows 95/ 98 pondremos la sentencia "set CLASSPATH=..." en algún lugar de
nuestro fichero autoexec.bat después de la línea que selecciona nuestro CLASSPATH
para apuntar a servlet.jar y jsp.jar.
Una segunda forma de compilar las clases que están en paquetes es ir al directorio
superior del que contiene los Servlets, y luego hacer "javac
directory YourServlet.java". Por ejemplo, supongamos de nuevo que nuestro
directorio base es C: J avaWebServer servlets y que el nombre de nuestro paquete (y
del directorio) es hall, y que estamos trabajando en Windows. En este caso, haremos los
sigueinte:
DOS> cd C:JavaWebServerservlets
DOS> javac hallYourServlet.java
Finalmente otra opción avanzada es mantener el código fuente en una localización
distinta de los ficheros .class. y usar la opción "-d" de javac para instalarlos en la
localización que espera el servidor Web.
2.3 Ejecutar el Servlet
Con el J ava Web Server, los servlets se sitúan en el directorio servlets dentro del
directorio principal de la instalación del J WS, y son invocados mediante
http:/ / host/ servlet/ ServletName. Observa que el directorio es servlets, plural,
mientras que la referencia URL es servlet, singular. Como este ejemplo se situó en el
paquete hall, sería invocado mediante http:/ / host/ servlet/ hall.HelloWorld. Otros
servidores podrían tener convenciones diferentes sobre donde instalar los servlets y
como invocarlos. La mayoría de los servidores nos permiten definir alias para nuestros
servlets, para que un servlet pueda ser invocado mediante
http:/ / host/ any-path/ any-file.html.
13. 3. Un Servlet que Genera HTML
La mayoría de los Servlets generan HTML, no texto normal como el ejemplo anterior.
Para hacer esto, necesitamos dos pasos adicionales, decirle al navegador que estámos
devolviendo HTML. y modificar la sentencia println para construir una página Web legal.
El primer paso se hace configurando la cabecera de respuesta Content-Type. En
general, las cabeceras de respuesta se configuran mendiante el método setHeader de
HttpServletResponse, pero seleccionar el tipo de contenido es una tarea muy común y
por eso tiene un método especial setContentType sólo para este propósito. Observa
que necesitamos configurar las cabeceras de respuesta antes, de devolver algún
contenido mediante PrintWriter. Aquí hay un ejemplo:
3.1 HelloWWW.java
También puedes descargar El Código fuente.
package hall;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWWW extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 " +
"Transitional//EN">n" +
"<HTML>n" +
"<HEAD><TITLE>Hello WWW</TITLE></HEAD>n" +
"<BODY>n" +
"<H1>Hello WWW</H1>n" +
"</BODY></HTML>");
}
14. }
3.2 Resultado de HelloWWW
4. Utilidades de Construcción de HTML Sencillo
Es un poco aburrido generar HTML con sentencias println. La solución real es usar J ava
Server Pages (J SP), que se describen más adelante. Sin embargo, para Servlets
estándards, hay dos partes de la página Web que no cambian (DOCTYPE y HEAD) y
que podría beneficiarnos el incluirlas en un fichero de utilidades.
La línea DOCTYPE es técnicamente requerida por la especificación HTML, y aunque la
mayoría de los navegadores Web la ignoran, es muy útil cuando se envían páginas a
validadores de formato HTML. Estos validadores comparan la síntasis HMTL de las
páginas comparándolas con la especificación formal del HTML, y usan la línea DOCTYPE
para determinar la versión de HTML con la que comparar.
En muchas páginas web, la línea HEAD no contiene nada más que el TI TLE, aunque los
desarrolladores avanzados podrían querer incluir etiquetas META y hojas de estilo. Pero
para el caso sencillo, crearemos un método que crea un título y devuelve las entradas
DOCTYPE, HEAD, y TI TLE como salida. Aquí está el código:
4.1 ServletUtilities.java (Descarga el código fuente)
package hall;
public class ServletUtilities {
public static final String DOCTYPE =
"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">";
public static String headWithTitle(String title) {
return(DOCTYPE + "n" +
"<HTML>n" +
"<HEAD><TITLE>" + title + "</TITLE></HEAD>n");
15. }
// Other utilities will be shown later...
}
4.2 HelloWWW2.java (Descarga el código fuente)
Aquí tenemos una nueva versión de la clase HelloWWW que usa esto.
package hall;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWWW2 extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println(ServletUtilities.headWithTitle("Hello WWW") +
"<BODY>n" +
"<H1>Hello WWW</H1>n" +
"</BODY></HTML>");
}
}
Ozito