Actualizado el 21 de Marzo del 2018 (Publicado el 18 de Enero del 2018)
732 visualizaciones desde el 18 de Enero del 2018
1,3 MB
153 paginas
Creado hace 17a (14/02/2007)
ESTUDIO Y DESCRIPCIÓN DE LA ARQUITECTURA JAVA EE Y DE LAS
PRINCIPALES TECNOLOGÍAS SUBYACENTES
No pude dividir bien el
documento en secciones,
por eso no pude quitar esta
numeración, sorry
1
ESTUDIO Y DESCRIPCIÓN DE LA ARQUITECTURA JAVA EE Y DE LAS
PRINCIPALES TECNOLOGÍAS SUBYACENTES
MAURICIO ARCHBOLD BARBOZA
MILTON JAVIER OCHOA LARIOS
UNIVESIDAD TECNOLÓGICA DE BOLÍVAR
PROGRAMA DE INGENIERÍA DE SISTEMAS
CARTAGENA DE INDIAS D. T. y C.
2007
2
ESTUDIO Y DESCRIPCIÓN DE LA ARQUITECTURA JAVA EE Y DE LAS
PRINCIPALES TECNOLOGÍAS SUBYACENTES
MAURICIO ARCHBOLD BARBOZA
MILTON JAVIER OCHOA LARIOS
Monografía para obtener el título de
Ingeniero de Sistemas
ASESOR:
GIOVANNY RAFAEL VASQUEZ MENDOZA
Ingeniero de Sistemas
UNIVESIDAD TECNOLÓGICA DE BOLÍVAR
PROGRAMA DE INGENIERÍA DE SISTEMAS
CARTAGENA DE INDIAS D. T. y C.
2007
3
Cartagena, febrero 5 del 2007
Señores:
UNIVERSIDAD TECNOLÓGICA DE BOLÍVAR
Comité de evaluación de proyectos
La Ciudad
Respetados señores:
De la manera más cordial, nos permitimos presentar a ustedes la monografía
titulada “ESTUDIO Y DESCRIPCIÓN DE LA ARQUITECTURA JAVA EE Y DE
LAS PRINCIPALES TECNOLOGÍAS SUBYACENTES”, para su estudio,
consideración y aprobación, como requisito fundamental para obtener el título de
Ingeniero de Sistemas, además para aprobar el Minor de Ingeniería de Software.
En espera que éste cumpla con las normas pertinentes establecidas por la
institución.
Sinceramente,
Mauricio Archbold Barboza
Código: 0205020
Milton Javier Ochoa Larios
Código: 0105018
4
Cartagena, febrero 5 del 2007
Señores:
UNIVERSIDAD TECNOLÓGICA DE BOLÍVAR
Comité de evaluación de proyectos
La Ciudad
Respetados señores:
Tengo el agrado de presentar a su consideración, estudio y aprobación, la
monografía titulada “ESTUDIO Y DESCRIPCIÓN DE LA ARQUITECTURA JAVA
EE Y DE LAS PRINCIPALES TECNOLOGÍAS SUBYACENTES”, desarrollada por
los estudiantes Mauricio Archbold Barboza y Milton Javier Ochoa Larios.
Al respecto me permito comunicar que he dirigido el citado trabajo, el cual
considero de gran importancia y utilidad.
Atentamente,
Giovanny R. Vásquez Mendoza
Ingeniero de Sistemas
5
Nota de aceptación
Firma del presidente del jurado
Firma del jurado
Firma del jurado
Cartagena Febrero de 2007
6
AUTORIZACIÓN
Cartagena de Indias, Febrero de 2007
Nosotros Mauricio Archbold Barboza, identificado con número de cédula
73.208.215 de la ciudad de Cartagena y Milton Javier Ochoa Larios, identificado
con número de cédula 73.197.994 de la ciudad de Cartagena, autorizamos a la
Universidad Tecnológica de Bolívar para hacer uso de nuestro trabajo de grado y
publicarlo en el catálogo online de la Biblioteca.
Atentamente,
Mauricio Archbold Barboza
Milton Javier Ochoa Larios
7
DEDICATORIA
Quiero dedicar, este trabajo a Dios, por ser el que nos acompaña día a día.
A mis padres, por acompañarme y apoyarme en todos los momentos de mi vida.
A mi hermana, por su apoyo y tolerancia, a mi hermano que esta en el cielo que se
que desde allá me esta ayudando a ser una mejor persona.
A mi novia, por estar con migo en los buenos y malos momentos.
Por última, a todas las personas que en el transcurso de mi carrera, han estado
allí, cuando los he necesitado.
MAURICIO ARCHBOLD BARBOZA
8
DEDICATORIA
Este trabajo se lo dedico a quien para mi son las mejores personas del mundo,
mis padres, Arnaldo Ochoa Díaz y Yamile Larios Posada.
A mis hermanos (Igor y Rosiris) y mi sobrino Sebastián con quienes día a día
comparto los buenos y malos ratos que nos da la vida.
A Dios por darme la vida, por acompañarme cada día y por haberme dejado
alcanzar una más de mis metas.
MILTON JAVIER OCHOA LARIOS
9
AGRADECIMIENTOS
Los autores de este trabajo de grado, desean brindarle al Ingeniero Giovanny R.
Vásquez Mendoza, los más sinceros agradecimientos, por ayudarnos, a través de
su colaboración, paciencia, y orientación, a la culminación exitosa de nuestra
monografía.
También a todas aquellas personas, que de una u otra forma, hicieron posible la
realización del Minor Ingeniería de Software, al cual le damos finalización, con la
presentación del siguiente trabajo investigativo.
Queremos agradecerle, a Dios, por habernos llenado de fortaleza, paciencia y
esmero, para no desfallecer en nuestra labor estudiantil, y ponerle amor a cada
una de las actividades que realizamos durante el transcurso de ésta.
Por último y no menos preciado le damos un especial agradecimiento al señor
Moisés Quintana, por habernos inundado de conocimiento en lo largo de toda
nuestra carrera.
10
TABLA DE CONTENIDO
INTRODUCCIÓN
1. FUNDAMENTOS DE JAVA EE
1.1. ¿QUÉ ES JAVA EE?
1.2. ARQUITECTURA MULTI-TIER
1.2.1. Arquitectura Single–Tiers
1.2.2. Arquitectura Cliente–Servidor (Two–Tiers)
1.2.3. Arquitectura N–Tiers
1.3. INDEPENDENCIA DE PROVEEDORES
1.4. ESCALABILIDAD
1.5. CONCEPTOS EN JAVA EE
1.5.1. Clientes y Servidores en Java EE
1.5.2. Contenedores
1.5.3. Java Servlets
1.5.4. JavaServer Pages
1.5.5. JavaServer Faces
1.5.6. EJBs
1.5.7. Servicios Web
2. TECNOLOGÍA JAVASERVER PAGES (JSP)
2.1. Desarrollo de JSP
2.2. CICLO DE VIDA DE UN JSP
2.3. COMPONENTES DE UN JSP
2.3.1. Elementos de Directivas
2.3.1.1. Directiva Page
2.3.1.2. Directiva Include
2.3.1.3. Directiva taglib
2.3.2. Elementos de Script
2.3.2.1. Declaraciones
2.3.2.2. Scriptles
2.3.2.3. Expresiones
1
3
4
4
5
5
6
7
9
9
9
10
11
12
12
13
16
18
18
19
20
21
21
23
24
24
24
25
26
11
2.3.3. Elementos de Acción
2.4. UTILIZACIÓN DE OBJETOS IMPLÍCITOS
2.4.1. The Request Object
2.4.2. The Response Object
2.4.3. The Out Object
2.4.4. The Session Object
2.4.5. The Config Object
2.4.6. The Exception Object
2.4.7. The Application Object
3. LA TECNOLOGÍA JAVA SERVER FACES
3.1. ¿POR QUÉ USAR JSF?
3.2. ¿QUÉ ES UNA APLICACIÓN JAVA SERVER FACES?
3.3. El Ciclo de Vida de una Página Java Server Faces
3.3.1. Escenarios de Procesamiento del Ciclo de Vida de una Petición
3.3.2. Ciclo de Vida Estándar de Procesamiento de Peticiones
3.3.2.1. Reconstituir el Árbol de Componentes
3.3.2.2. Aplicar Valores de la Petición
3.3.2.3. Procesar Validaciones
3.3.2.4. Actualizar los Valores del Modelo
3.3.2.5. Invocar Aplicación
3.3.2.6. Renderizar la Respuesta
4. SERVLETS
4.1. HTTP Y PROGRAMAS DE SERVIDOR
4.1.1. Métodos de petición.
4.1.2. Como un Servidor Responde a Peticiones
4.2 EL MODELO SERVLET Y HTTPSERVLETS
4.2.1. Diseño básico de un servlet
4.2.1.1. El método service()
4.2.1.2. Los métodos doPost() y doGet()
4.3. CICLO DE VIDA DE UN SERVLET
4.3.1. Carga e instanciación
26
28
28
29
30
30
32
32
32
34
35
36
38
38
40
41
41
42
42
43
43
44
45
46
47
48
49
50
50
52
53
12
4.3.2. Inicialización
4.3.3. Fin de vida
5. ENTERPRISE JAVA BEANS
5.1 ENTENDIENDO LOS EJBs
5.1.1. ¿Por que Utilizar los EJBs?
5.1.2. Especificación de los EJBs
5.1.3. Los tres tipos de EJBs
5.1.3.1. Beans de Sesión
5.1.3.1.1. Anatomía de un bean de sesión.
5.1.3.1.2. ¿Como escoger entre un bean de sesión con estado y sin estado?
5.1.3.2. Beans de entidad
5.1.3.2.1. beans de entidad junto con los bean de sesión
5.1.3.2.2. Anatomía de un bean de entidad
5.1.3.2.3. La clase del bean de entidad
5.1.3.2.4. Persistencia Controlada por el contenedor y el EntityManager
5.1.3.2.4.1. Llaves Primarias
5.1.3.2.5. Bean-Managed Persistente
5.1.3.2.6. El Lenguaje de Consulta EJB
5.1.3.2.6.1. El objeto javax.ejb.Query
5.1.3.2.6.2. Construyendo consultas EJB
5.1.3.3 Beans dirigidos por mensajes (MDBs)
5.1.3.3.1. Vistazo general de los beans dirigido por mensajes
5.1.3.3.2. Descripción de los MDBs
5.1.3.3.3. El contexto de los MDBs
5.1.3.3.4. Transacciones MDB
5.1.3.3.4.1. Transacciones manejadas por el contenedor
5.1.3.3.4.2. Transacciones definidas por usuarios
5.1.3.3.5. Invocación de un interceptor
5.1.3.3.6. La API Java Message Service
5.1.3.3.7. Servicio Timer EJB
6. SERVICIOS Web
54
56
58
58
59
60
61
61
63
64
66
67
68
69
70
72
72
73
74
75
79
79
81
82
83
83
84
85
86
87
89
13
6.1. ESTÁNDARES Y MODELOS
6.2. ¿PORQUE UTILIZAR SERVICIOS WEB?
6.3. PROTOCOLO STACK
6.3.1. Capa de transporte
6.3.2. Capa de codificación
6.3.3. Capa de Mensajes
6.3.4. Capa de descripción
6.3.5. Capa de descubrimiento
6.3.6. Capas emergentes
6.4. ¿CÓMO FUNCIONAN LOS SERVICIOS WEB?
CONCLUSIONES
RECOMENDACIONES
TÉRMINOS Y DEFINICIONES
BIBLIOGRAFÍA
ANEXO A. EJEMPLO DE UNA APLICACIÓN JSP
ANEXO B. EJEMPLO DE UNA APLICACIÓN JSF
ANEXO C. EJEMPLO DE UN SERVLET
ANEXO D. EJEMPLO DE UN BEAN DE SESSION
ANEXO E. EJEMPLO DE UN JAVABEAN DE ENTIDAD
ANEXO F. EJEMPLO DE MDBS Y LAS API EXPLICADAS
90
92
92
92
93
93
93
94
95
95
97
99
100
103
104
108
114
118
122
130
14
LISTADO DE TABLAS Y FIGURAS
Tabla1. Tipos de atributos de la directiva page con sus descripciones
Tabla 2. Métodos de la especificación HTTP y sus descripciones
Tabla 3. Funciones de
Comentarios de: Estudio y Descripción de La Arquitectura Java EE y de Las Principales Tecnologías Subyacentes (1)