a brief introduction to java enterprise edition platform...
TRANSCRIPT
![Page 1: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/1.jpg)
A Brief Introduction to Java Enterprise Edition Platform
(JEE)
Juan Manuel GimenoJosep Maria Ribó
{jmgimeno,josepma}@diei.udl.cat
Title:(by-sa.eps) Creator:Adobe Illustrator(R) 8.0 CreationDate:3/27/08 4:27 PM
![Page 2: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/2.jpg)
What do we mean by Platform?
● When a programmer has to handle collections● Doesn't start by developing a hash table ● Uses the Collections API in the Standard Edition of
Java (JSE)
● When a programmer needs a transactional, secure, interoperable, distributed application● Doesn't start by developing the low-level plumbing● Uses the Enterprise Edition of Java (JEE)● Focuses the efforts in the problem not in the low-
level details
![Page 3: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/3.jpg)
A little bit of history
● JEE was born in May 1998 as Project JPE (Java Professional Edition)
● J2EE1.2 was released in Dec 1999 as an umbrella specification consisting on 10 JSRs (Java Specification Request)
● Starting with J2EE1.3 the specification was developed by the Java Community Process (JCP)
![Page 4: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/4.jpg)
J2EE1.2
● Focus on distributed systems● CORBA was the competitor
● Enterprise Java Beans (EJBs)● Remote stateful and stateless service objects● Entity EJBs (persistence objects) optional● Built on Remote Method Invocation-Internet Inter
ORB Protocol (RMI-IIOP)
● Servlets and Java Server Pages (JSP)● JMS for messaging
![Page 5: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/5.jpg)
J2EE1.3
● First to be developed by the Java Community Process (JCP) under JSR58
● Entity beans now are mandatory● XML deployment descriptors for EJBs● Introduced local interfaces passing arguments
by reference● J2EE Connector Architecture (JCA) introduced
to connect Java EE to EIS (Enterprise Information Systems)
![Page 6: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/6.jpg)
J2EE1.4
● JSR 151● Added support for Web Services as EJB2.1
could be invoked over SOAP/HTTP● Timer service created● Better support for
● Management● Deployment
![Page 7: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/7.jpg)
But there were problems ...
● Systems created with J2EE● Too complicated● Development time out of proportion
● J2EE component model● Heavy-weight● Difficult to test● Difficult to deploy● Difficult to run
![Page 8: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/8.jpg)
… and alternatives
● A new way og developing enterprise applications using lightweight frameworks● Struts● Spring● Hibernate
![Page 9: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/9.jpg)
Java EE 5
● JSR 244● Inspired in open source frameworks
● Based on a POJO (Plain Old Java Object) programming model
● Metadata can be defined by annotations and XML descriptors optional
● Java Server Faces (JSF) introduced● JAX-WS 2.0 replaced JAX-RPC as the SOAP
web services API.
![Page 10: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/10.jpg)
Java EE 6
● JSR 316● Annotations, POJO programming,
configuration-by-exception (even for web tier)● JPA 2.0● New JAX-RS 1.1 (RESTfull web services)● Deprecation of some APIs (by prunning)● Profiles: web profile● Dependency injection
![Page 11: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/11.jpg)
History of the Specification
![Page 12: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/12.jpg)
Java Community Process (JCP)
● Open organization created in 1998 involved in the definition of the future versions and features
● When the need for a new component or API is identified, the spec lead creates a JSR and forms a group of experts
● This group has to deliver● A specification● A reference implementation (RI)● A Technology Compatibility Kit (TCK).
![Page 13: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/13.jpg)
Standards
● Java EE is an umbrella specification that bundles together other JSRs
● Java EE standards implemented by ● Commercial () or open-source solutions● No locking to an implementation● Portable with minor changes
![Page 14: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/14.jpg)
Architecture
● Java EE is a set of specifications implemented by diferent containers
● Containers are runtime environments that provide certain services to the components they host
● The components use well-defined contracts to communicate ● with the Java EE infrastructure● With other components
![Page 15: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/15.jpg)
Relationships between containers
![Page 16: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/16.jpg)
Components
● The java EE runtime defines four types of components that an implementation must support● Application clients and applets are components that
run on the client● Java Servlets, JSP and JSF are components that
run on the server (web container)● Enterprise Java Beans EJB are business
components that run on the server (ejb container)
![Page 17: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/17.jpg)
Containers
● The Java EE Server provides underlying services in the form of a container for every component type
● Each container has a specific role, supports a set of APIs and offer services to components● Security, database access, transaction handling,
naming directory, resource injection, …
● Because all these services are provided, the programmer can concentrate on the business problem at hand
![Page 18: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/18.jpg)
Clients and servers
![Page 19: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/19.jpg)
Services provided by containers
![Page 20: A Brief Introduction to Java Enterprise Edition Platform (JEE)ocw.udl.cat/enginyeria-i-arquitectura/plataformes... · A little bit of history JEE was born in May 1998 as Project JPE](https://reader035.vdocuments.net/reader035/viewer/2022081405/5f0bde017e708231d4329aec/html5/thumbnails/20.jpg)
Bibliography
● A.Gonçalves, “Beginning Java EE6 Platform with Glassfish 3”, Apress (2009)
● The Java EE 6 Tutorial, Volume I