SlideShare una empresa de Scribd logo
1 de 29
Ing. Aurelio Martín Obando Távara aot@upnorte.edu.pe Lenguaje de programación iiARQUITECTURA JEE Y TOMCAT
Los TemasPrincipales 1 3 2 JEE Tomcat Contenedor Web / Aplicaciones
TEMARIO 1 Arquitectura Java EE y el servidor web Tomcat
2 CONTENIDO Semana 01
Java Enterprise Edition (JEE)
Java Enterprise Edition o Java EE (anteriormente conocido como Java 2 Enterprise Edition o J2EE hasta la versión 1.4), es una plataforma de programación—parte de la plataforma Java—para desarrollar y ejecutar software en Lenguaje de programación Java. Java EE incluye varias especificaciones de API, tales como JDBC, RMI, Java-Mail, JMS, Servicios Web, XML, etc. y define cómo coordinarlos. Java EE también configura algunas especificaciones únicas para Java EE, como: Enterprise JavaBeans, servlets, portlets (siguiendo la especificación de Portlets Java), JavaServerPages y varias tecnologías de servicios web. Algunos de los beneficios añadidos son, por ejemplo, que el servidor de aplicaciones puede manejar transacciones, seguridad, escalabilidad, concurrencia y gestión de los componentes desplegados, significando que los desarrolladores pueden concentrarse más en la lógica de negocio de los componentes en lugar de tareas de mantenimiento de bajo nivel. JEE
- Programación eficiente. Para conseguir productividad es importante que los equipos de desarrollo tengan una forma estándar de construir múltiples aplicaciones en diversas capas (cliente, servidor web, etc.). - Extensibilidad frente a la demanda del negocio. En un contexto de crecimiento de número de usuarios, es preciso la gestión de recursos, como conexiones a bases de datos, transacciones o balanceo de carga. - Integración. Los equipos de ingeniera precisan estándares que favorezcan la integración entre diversas capas de software. - Aplicaciones Empresariales requieren ser 	Desarrolladas más rápido 	Con menos recursos - Las aplicaciones actuales requieren 	Distribución Transaccionalidad 	Portabilidad 	Seguridad RAZONES POR QUE UTILIZAR JEE
MODELO DE APLICACIÓN JEE
Nivel Intermedio MODELO DE APLICACIÓN JEE Como se puede ver, un concepto clave de la arquitectura es el de contenedor. Algunos tipos de contenedores: · Contenedor Web, también denominado contenedor Servlet/JSP, maneja la ejecución de los servlets y páginas JSP.  · Contenedor Enterprise JavaBeans, que gestiona la ejecución de los EJB.
La plataforma JEE incluye APIs para el acceso a sistemas empresariales: · JDBC es el API para accceso a base de datos desde Java. · Java Transaction API (JTA) es el API para manejo de transacciones a través de sistemas heterogéneos. · Java Naming and Directory Interface (JNDI) es el API para acceso a servicios de nombres y directorios. · Java MessageService (JMS) es el API para el envío y recepción de mensajes por medio de sistemas de mensajería empresarial como IBM MQ Series. · JavaMail es el API para envío y recepción de email. · Java Interface DescriptionLanguage (JIDL) es el API para llamar a servicios CORBA. · Java Authentication and Authorization Service (JAAS) es una interfaz que permite a las aplicaciones Java acceder a servicios de control de autenticación y acceso. · Java Architecture for XML Binding (JAXB) es una interfaz que permite a las aplicaciones Java con esquemas XML, muy útil para Web Services. JEE API’s
Tipos de Contenedores Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache. Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas). Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web). Servicios ofrecidos por el contenedor EJB Seguridad Manejo de transacciones Manejo de nombres y directorios (JNDI) Conectividad remota Web Services CONTENEDORES JEE
¿Qué ocurre cuando un navegador invoca una aplicación?
CAPAS DE LA ARQUITECTURA PROPUESTA POR JEE
Diversos escenarios de aplicación
Es el escenario canónico, donde aparecen todas las capas, empezando en un navegador HTML/XML. La generación de contenidos dinámicos se realiza normalmente en páginas JSP. La capa EJB nos permite desacoplar el acceso a datos EIS de la interacción final con el usuario que se produce en las páginas HTML y JSP. ESCENARIO DESDE UN NAVEGADOR
Podemos considerar que tenemos como cliente una aplicación stand-alone, que puede ser una aplicación Java o incluso un programa en Visual Basic. La aplicación puede acceder directamente a la capa EJB o a la base de datos del EIS (esto último por medio de JDBC). ESCENARIO DESDE UNA APLICACIÓN
La plataforma JEE no obliga a usar todas las capas en un sistema. Lo esencial es escoger el mecanismo adecuado para el problema. En este sentido, en ocasiones no hay (ni prevemos que haya) la complejidad como para requerir una capa EJB. Se denomina escenario web-centric porque el contenedor web es el que realiza gran parte del trabajo del sistema. ESCENARIO BASADO EN LA WEB (web-centricapplication)
Tomcat
Jakarta-Tomcat es un servidor web que extiende la funcionalidad del mismo. Por sí solo, un servidor web sólo puede mostrar páginas estáticas HTML. Tomcat extiende y mejora esta funcionalidad al permitir ejecutar componentes Java tales como JSP’s, Servlets, etc. Tomcatno soporta Enteprise Java Beans (EJBs). Es básicamente un contenedor de Servlets y JSPs. Ejemplos de otros servidores de aplicaciones que soportan Servlets y JSP’s son los siguientes: · iPlanet · Jetty · JRun · Bluestone · Borland Enterprise Server DEFINICIÓN
Aplicación web: “Una aplicación web es una colección de Servlets, páginas JSP, clases Java, archivos de descripción de la aplicación y documentos estáticos tales como HTML, XHTML, imágenes, etc. “ Estructura de archivos: APLICACIONES WEB EN TOMCAT
PRINCIPALES DIRECTORIOS DE UNA APLICACIÓN WEB
ARCHIVOS IMPORTANTES DE UNA APLICACIÓN WEB
3 Resumen
Nivel Intermedio RESUMEN ,[object Object],[object Object]
Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache.
Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas).
Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web).
Tomcat es un servidor web que extiende la funcionalidad del mismo, pero no soporta Enteprise Java Beans (EJB’s).,[object Object],[object Object]
Aquí hallará toda la especificación y ejemplos de la versión actual de JEE.

Más contenido relacionado

La actualidad más candente

Asp.net conceptos
Asp.net conceptosAsp.net conceptos
Asp.net conceptos
XstremsX
 

La actualidad más candente (20)

Curso Java Avanzado 5 Ejb
Curso Java Avanzado   5 EjbCurso Java Avanzado   5 Ejb
Curso Java Avanzado 5 Ejb
 
Frameworks J2EE
Frameworks J2EEFrameworks J2EE
Frameworks J2EE
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)
 
1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML
 
Qué es jdbc
Qué es jdbcQué es jdbc
Qué es jdbc
 
Java y Bases de Datos
Java y Bases de DatosJava y Bases de Datos
Java y Bases de Datos
 
Java Web Services - REST
Java Web Services - RESTJava Web Services - REST
Java Web Services - REST
 
Java Web Services - Introduccion
Java Web Services - IntroduccionJava Web Services - Introduccion
Java Web Services - Introduccion
 
Clase 14 intro ej bs
Clase 14  intro ej bsClase 14  intro ej bs
Clase 14 intro ej bs
 
Asp.net conceptos
Asp.net conceptosAsp.net conceptos
Asp.net conceptos
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones Java
 
Introducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaIntroducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en Java
 
JDBC
JDBCJDBC
JDBC
 
Bloques
BloquesBloques
Bloques
 
Charla
CharlaCharla
Charla
 
Jdbc
JdbcJdbc
Jdbc
 
Jdbc
JdbcJdbc
Jdbc
 
Presentación1
Presentación1Presentación1
Presentación1
 
Curso Básico de JDBC
Curso Básico de JDBCCurso Básico de JDBC
Curso Básico de JDBC
 
JAVA 2 EE
JAVA 2 EEJAVA 2 EE
JAVA 2 EE
 

Destacado

PROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDORPROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDOR
Laddy Mathita
 
Published patent and design registration information october 3rd, 2014
Published patent and design registration information   october 3rd, 2014Published patent and design registration information   october 3rd, 2014
Published patent and design registration information october 3rd, 2014
InvnTree IP Services Pvt. Ltd.
 
nuestro bebe
nuestro bebenuestro bebe
nuestro bebe
javicapin
 

Destacado (20)

Curso java y j2 EE
Curso java y j2 EECurso java y j2 EE
Curso java y j2 EE
 
Curso de pl sql básico
Curso de pl sql básicoCurso de pl sql básico
Curso de pl sql básico
 
PROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDORPROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDOR
 
Inciando con AngularJS y JavaEE 7
Inciando con AngularJS y JavaEE 7Inciando con AngularJS y JavaEE 7
Inciando con AngularJS y JavaEE 7
 
Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracle
 
Moving bio-innovations from the laboratory to the market: A comparative study...
Moving bio-innovations from the laboratory to the market: A comparative study...Moving bio-innovations from the laboratory to the market: A comparative study...
Moving bio-innovations from the laboratory to the market: A comparative study...
 
Goku
GokuGoku
Goku
 
BLIP-Abschlusstagung
BLIP-AbschlusstagungBLIP-Abschlusstagung
BLIP-Abschlusstagung
 
Music at the BNE: a multifaceted approach. Isabel Bordes Cabrera
Music at the BNE: a multifaceted approach. Isabel Bordes CabreraMusic at the BNE: a multifaceted approach. Isabel Bordes Cabrera
Music at the BNE: a multifaceted approach. Isabel Bordes Cabrera
 
Plan de gestion institucional final blog
Plan de gestion institucional final blogPlan de gestion institucional final blog
Plan de gestion institucional final blog
 
El internet
El  internetEl  internet
El internet
 
Published patent and design registration information october 3rd, 2014
Published patent and design registration information   october 3rd, 2014Published patent and design registration information   october 3rd, 2014
Published patent and design registration information october 3rd, 2014
 
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
 
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
 
RS MOBILE STAGE presentation
RS MOBILE STAGE presentationRS MOBILE STAGE presentation
RS MOBILE STAGE presentation
 
Lambda, Una Consultoría Diferente
Lambda, Una Consultoría DiferenteLambda, Una Consultoría Diferente
Lambda, Una Consultoría Diferente
 
Isprsarchives xl-7-w3-897-2015
Isprsarchives xl-7-w3-897-2015Isprsarchives xl-7-w3-897-2015
Isprsarchives xl-7-w3-897-2015
 
Expo. jonan
Expo. jonanExpo. jonan
Expo. jonan
 
nuestro bebe
nuestro bebenuestro bebe
nuestro bebe
 
Bretagne at In-cosmetics 2014
Bretagne at In-cosmetics 2014Bretagne at In-cosmetics 2014
Bretagne at In-cosmetics 2014
 

Similar a JEE y Tomcat

Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)
Robert Rayco Quiroz
 
Serivodres de aplicacion
Serivodres de aplicacionSerivodres de aplicacion
Serivodres de aplicacion
aleexsanroman
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
Eudris Cabrera
 
Manual programacion - java - jsp & xml
Manual   programacion - java - jsp & xmlManual   programacion - java - jsp & xml
Manual programacion - java - jsp & xml
gilhorak
 
J2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos SlidesJ2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos Slides
mundojava
 

Similar a JEE y Tomcat (20)

Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)
 
Introducción a Java y BEA (2008)
Introducción a Java y BEA (2008)Introducción a Java y BEA (2008)
Introducción a Java y BEA (2008)
 
Clase ii intro j2 ee resumen
Clase ii   intro j2 ee resumenClase ii   intro j2 ee resumen
Clase ii intro j2 ee resumen
 
Introducción a JEE
Introducción a JEEIntroducción a JEE
Introducción a JEE
 
01 jee5-componentes
01 jee5-componentes01 jee5-componentes
01 jee5-componentes
 
Arquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EEArquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EE
 
JBoss AS jeap - Curso JBoss JB366 Día 1
JBoss AS jeap - Curso JBoss JB366 Día 1 JBoss AS jeap - Curso JBoss JB366 Día 1
JBoss AS jeap - Curso JBoss JB366 Día 1
 
J2 ee
J2 eeJ2 ee
J2 ee
 
[ES] Introdución al desarrollo de aplicaciones web en java
[ES] Introdución al desarrollo de aplicaciones  web en java[ES] Introdución al desarrollo de aplicaciones  web en java
[ES] Introdución al desarrollo de aplicaciones web en java
 
Serivodres de aplicacion
Serivodres de aplicacionSerivodres de aplicacion
Serivodres de aplicacion
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
 
Plataforma de programación Java
Plataforma de programación JavaPlataforma de programación Java
Plataforma de programación Java
 
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptintroduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
 
Manual programacion - java - jsp & xml
Manual   programacion - java - jsp & xmlManual   programacion - java - jsp & xml
Manual programacion - java - jsp & xml
 
spring
springspring
spring
 
J2ee
J2eeJ2ee
J2ee
 
J2ee
J2eeJ2ee
J2ee
 
JDBC
JDBCJDBC
JDBC
 
Introducción JEE
Introducción JEEIntroducción JEE
Introducción JEE
 
J2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos SlidesJ2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos Slides
 

Más de Aurelio Martín Obando Távara

Más de Aurelio Martín Obando Távara (14)

Configuracion del Entorno
Configuracion del EntornoConfiguracion del Entorno
Configuracion del Entorno
 
Descripción y fuentes de excepciones comunes
Descripción y fuentes de excepciones comunesDescripción y fuentes de excepciones comunes
Descripción y fuentes de excepciones comunes
 
Gestión de Excepciones
Gestión de ExcepcionesGestión de Excepciones
Gestión de Excepciones
 
P1C5 Lenguaje de Expresiones
P1C5 Lenguaje de ExpresionesP1C5 Lenguaje de Expresiones
P1C5 Lenguaje de Expresiones
 
P2C5 Introducción a JEE5 - II
P2C5 Introducción a JEE5 - IIP2C5 Introducción a JEE5 - II
P2C5 Introducción a JEE5 - II
 
P1C4 Criterios De Evaluación - T1
P1C4 Criterios De Evaluación - T1P1C4 Criterios De Evaluación - T1
P1C4 Criterios De Evaluación - T1
 
P1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalleP1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalle
 
Etiquetas JavaServer Faces
Etiquetas JavaServer FacesEtiquetas JavaServer Faces
Etiquetas JavaServer Faces
 
Datatable Y Column
Datatable Y ColumnDatatable Y Column
Datatable Y Column
 
P1C3 Anotaciones
P1C3 AnotacionesP1C3 Anotaciones
P1C3 Anotaciones
 
P2C2 Introducción a JEE5
P2C2 Introducción a JEE5P2C2 Introducción a JEE5
P2C2 Introducción a JEE5
 
P1C2 Navegación y Parámetros
P1C2 Navegación y ParámetrosP1C2 Navegación y Parámetros
P1C2 Navegación y Parámetros
 
P2C1 - Configuración del Entorno
P2C1 - Configuración del EntornoP2C1 - Configuración del Entorno
P2C1 - Configuración del Entorno
 
P1C1 - Java Server Faces 2.0
P1C1 - Java Server Faces 2.0P1C1 - Java Server Faces 2.0
P1C1 - Java Server Faces 2.0
 

Último

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
JonathanCovena1
 

Último (20)

TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° grado
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 

JEE y Tomcat

  • 1. Ing. Aurelio Martín Obando Távara aot@upnorte.edu.pe Lenguaje de programación iiARQUITECTURA JEE Y TOMCAT
  • 2. Los TemasPrincipales 1 3 2 JEE Tomcat Contenedor Web / Aplicaciones
  • 3. TEMARIO 1 Arquitectura Java EE y el servidor web Tomcat
  • 6. Java Enterprise Edition o Java EE (anteriormente conocido como Java 2 Enterprise Edition o J2EE hasta la versión 1.4), es una plataforma de programación—parte de la plataforma Java—para desarrollar y ejecutar software en Lenguaje de programación Java. Java EE incluye varias especificaciones de API, tales como JDBC, RMI, Java-Mail, JMS, Servicios Web, XML, etc. y define cómo coordinarlos. Java EE también configura algunas especificaciones únicas para Java EE, como: Enterprise JavaBeans, servlets, portlets (siguiendo la especificación de Portlets Java), JavaServerPages y varias tecnologías de servicios web. Algunos de los beneficios añadidos son, por ejemplo, que el servidor de aplicaciones puede manejar transacciones, seguridad, escalabilidad, concurrencia y gestión de los componentes desplegados, significando que los desarrolladores pueden concentrarse más en la lógica de negocio de los componentes en lugar de tareas de mantenimiento de bajo nivel. JEE
  • 7. - Programación eficiente. Para conseguir productividad es importante que los equipos de desarrollo tengan una forma estándar de construir múltiples aplicaciones en diversas capas (cliente, servidor web, etc.). - Extensibilidad frente a la demanda del negocio. En un contexto de crecimiento de número de usuarios, es preciso la gestión de recursos, como conexiones a bases de datos, transacciones o balanceo de carga. - Integración. Los equipos de ingeniera precisan estándares que favorezcan la integración entre diversas capas de software. - Aplicaciones Empresariales requieren ser Desarrolladas más rápido Con menos recursos - Las aplicaciones actuales requieren Distribución Transaccionalidad Portabilidad Seguridad RAZONES POR QUE UTILIZAR JEE
  • 9. Nivel Intermedio MODELO DE APLICACIÓN JEE Como se puede ver, un concepto clave de la arquitectura es el de contenedor. Algunos tipos de contenedores: · Contenedor Web, también denominado contenedor Servlet/JSP, maneja la ejecución de los servlets y páginas JSP. · Contenedor Enterprise JavaBeans, que gestiona la ejecución de los EJB.
  • 10. La plataforma JEE incluye APIs para el acceso a sistemas empresariales: · JDBC es el API para accceso a base de datos desde Java. · Java Transaction API (JTA) es el API para manejo de transacciones a través de sistemas heterogéneos. · Java Naming and Directory Interface (JNDI) es el API para acceso a servicios de nombres y directorios. · Java MessageService (JMS) es el API para el envío y recepción de mensajes por medio de sistemas de mensajería empresarial como IBM MQ Series. · JavaMail es el API para envío y recepción de email. · Java Interface DescriptionLanguage (JIDL) es el API para llamar a servicios CORBA. · Java Authentication and Authorization Service (JAAS) es una interfaz que permite a las aplicaciones Java acceder a servicios de control de autenticación y acceso. · Java Architecture for XML Binding (JAXB) es una interfaz que permite a las aplicaciones Java con esquemas XML, muy útil para Web Services. JEE API’s
  • 11. Tipos de Contenedores Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache. Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas). Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web). Servicios ofrecidos por el contenedor EJB Seguridad Manejo de transacciones Manejo de nombres y directorios (JNDI) Conectividad remota Web Services CONTENEDORES JEE
  • 12. ¿Qué ocurre cuando un navegador invoca una aplicación?
  • 13. CAPAS DE LA ARQUITECTURA PROPUESTA POR JEE
  • 14. Diversos escenarios de aplicación
  • 15. Es el escenario canónico, donde aparecen todas las capas, empezando en un navegador HTML/XML. La generación de contenidos dinámicos se realiza normalmente en páginas JSP. La capa EJB nos permite desacoplar el acceso a datos EIS de la interacción final con el usuario que se produce en las páginas HTML y JSP. ESCENARIO DESDE UN NAVEGADOR
  • 16. Podemos considerar que tenemos como cliente una aplicación stand-alone, que puede ser una aplicación Java o incluso un programa en Visual Basic. La aplicación puede acceder directamente a la capa EJB o a la base de datos del EIS (esto último por medio de JDBC). ESCENARIO DESDE UNA APLICACIÓN
  • 17. La plataforma JEE no obliga a usar todas las capas en un sistema. Lo esencial es escoger el mecanismo adecuado para el problema. En este sentido, en ocasiones no hay (ni prevemos que haya) la complejidad como para requerir una capa EJB. Se denomina escenario web-centric porque el contenedor web es el que realiza gran parte del trabajo del sistema. ESCENARIO BASADO EN LA WEB (web-centricapplication)
  • 19. Jakarta-Tomcat es un servidor web que extiende la funcionalidad del mismo. Por sí solo, un servidor web sólo puede mostrar páginas estáticas HTML. Tomcat extiende y mejora esta funcionalidad al permitir ejecutar componentes Java tales como JSP’s, Servlets, etc. Tomcatno soporta Enteprise Java Beans (EJBs). Es básicamente un contenedor de Servlets y JSPs. Ejemplos de otros servidores de aplicaciones que soportan Servlets y JSP’s son los siguientes: · iPlanet · Jetty · JRun · Bluestone · Borland Enterprise Server DEFINICIÓN
  • 20. Aplicación web: “Una aplicación web es una colección de Servlets, páginas JSP, clases Java, archivos de descripción de la aplicación y documentos estáticos tales como HTML, XHTML, imágenes, etc. “ Estructura de archivos: APLICACIONES WEB EN TOMCAT
  • 21. PRINCIPALES DIRECTORIOS DE UNA APLICACIÓN WEB
  • 22. ARCHIVOS IMPORTANTES DE UNA APLICACIÓN WEB
  • 24.
  • 25. Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache.
  • 26. Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas).
  • 27. Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web).
  • 28.
  • 29. Aquí hallará toda la especificación y ejemplos de la versión actual de JEE.
  • 31. De este documento se obtuvieron algunos conceptos para construir esta presentación.
  • 33. Aquí hallará todo lo referente a Servlets.
  • 35. Repositorio de presentaciones en donde encontrará información relevante no solo al tema de hoy, sino también al curso.
  • 37.
  • 38. Encuentra esta presentación en el AULA VIRTUAL O tambiénpuedesencontrarla en . Saludos!

Notas del editor

  1. lates.
  2. Programación eficiente. Con JEE tenemos una tecnología estándar, un único modelo de aplicaciones, que incluye diversas herramientas; en contraposición al desarrollo tradicional con HTML, JavaScript, CGI, servidor web, etc. que implicaba numerosos modelos para la creación de contenidos dinámicos, con los lógicos inconvenientes para la integración.Extensibilidad frente a la demanda del negocio. Además, los equipos de desarrollo deben aplicar un estándar que les permita abstraerse de la implementación del servidor, con aplicaciones que puedan ejecutarse en múltiples servidores, desde un simple servidor hasta una arquitectura de alta disponibilidad y balanceo de carga entre diversas máquinas.
  3. Los contenedores incluyen descriptores de despliegue (deploymentdescriptors), que son archivos XML que nos sirven para configurar el entorno de ejecución: rutas de acceso a aplicaciones, control de transacciones, parámetros de inicialización, etc.
  4. Sin embargo, conviene empezar por el principio, es decir, el lenguaje básico de interconexión: el protocolo HTTP. Este es un protocolo de aplicación, generalmente implementado sobre TCP/IP. Es un protocolo sin estado basado en solicitudes (request) y respuestas (response), que usa por defecto el puerto 8080:· "Basado en peticiones y respuestas": significa que el cliente (por ejemplo, un navegador) inicia siempre la conexión (por ejemplo, para pedir una página). No hay posibilidad de que el servidor realice una llamada de respuesta al cliente (retrollamada). El servidor ofrece la respueta (la página) y cierra la conexión. En la siguiente petición del cliente, se abre una conexión y el ciclo vuelve e empezar: el servidor devuelve el recurso y cierra conexión.· "Sin estado": el servidor cierra la conexión una vez realizada la respuesta. No se mantienen los datos asociados a la conexión. Más adelante veremos que hay una forma de persistencia de datos asociada a la "sesión“.
  5. La visión de la arquitectura es un esquema lógico, no físico. Cuando hablamos de capas nos referimos sobre todo a servicios diferentes (que pueden estar físicamente dentro de la misma máquina e incluso compartir servidor de aplicaciones y JVM).
  6. Una pregunta muy común es cuándo usar servlets y cuándo usar páginas JSP. La pregunta es lógica, al fin y al cabo ambos mecanismos permiten generar contenidos dinámicos y además las JSP son servlets generados por el servidor de aplicaciones. La norma es que la mayor parte de las interacciones con el usuario se realizarán en las JSP debido a su flexibilidad, ya que integran de forma natural etiquetas HTML, XML, JSF, etc. Los servlets serán la excepción (un ejemplo típico es usar un servlet como controlador: un controlador recibe peticiones o eventos desde el interfaz de cliente y "sabe" el componente que debe invocar).
  7. En este tipo de escenario, la capa web implica tanto lógica de presentación como lógica de negocio. Pero lo deseable es no mezclar todas las cosas, planteando un diseño modular. Para ello, las JSP y servlets no suelen acceder de forma directa a la base de datos, sino que lo hacen por medio de un servicio de acceso a datos.
  8. Se puede trabajar con Tomcat como contenedor de JSPs y Servlets y algún otro servidor de aplicaciones como contenedor de EJBs. A continuación, se listan ejemplos de servidores de aplicaciones que soportan EJBs:- Oracle 9iAS- JBoss (gratuito)- JOnAS (gratuito)- Web Logic- IBM WebSphereTomcat se constituye en uno de los proyectos más interesantes de código abierto (open source) liderado por la Apache Software Foundation y es distribuído junto con el servidor web Apache.Tomcat cumple parcialmente (no soporta EJBs) con los estándares JEE e implementa las especificaciones Servlet 2.3 y JavaServerPages 1.2.