Top Banner
1 Introduction to Introduction to Java EE (J2EE) Java EE (J2EE)  
117

Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

May 26, 2018

Download

Documents

ngominh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

1

Introduction toIntroduction toJava EE (J2EE)Java EE (J2EE) 

Page 2: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

2

Session Objectives

● Understanding the value propositions of J2EE

● Getting a big picture of J2EE architecture and platform

● Getting high­level exposure of APIs and Technologies that constitute J2EE– You don't have to understand the details

● Understanding why J2EE is a great platform for development and deployment of web services

Page 3: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

3

Agenda● What is J2EE?● Evolution of Enterprise Application Development 

Frameworks● Why J2EE?● J2EE Platform Architecture● J2EE APIs and Technologies● Standard Impl (J2EE 1.4), Compatibility Test Suite 

(CTS)● BluePrints● J2EE and Web Services ● How to get started

Page 4: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

4

What is J2EE?

Page 5: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

5

ChallengesPortabilityDiverse EnvironmentsTime­to­marketCore CompetenceAssemblyIntegration

Key TechnologiesJ2SE™

J2EE™

JMS

Servlet

JSP

Connector

XML

Data Binding

XSLT

ProductsApp Servers

Web Servers

Components 

Databases

Object to DB tools

LegacySystems

Databases

TP Monitors

EIS Systems 

Enterprise Computing

Page 6: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

6

What Is the J2EE?

Open and standard based platform for

developing, deploying and managing n­tier, Web­enabled, server­centric, 

and component­based enterprise applications

Page 7: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

7

The Java™ Platform

High­EndServer

Java Technology Enabled Desktop

WorkgroupServer

Java Technology Enabled Devices

Page 8: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

8

The JavaTM Platform

OptionalPackages

Java 2Enterprise

Edition(J2EE)

Java 2StandardEdition(J2SE)

JVM

Java Card APIs

CardVM

OptionalPackages

Personal Basis Profile

Personal Profile

Foundation Profile

CDC

MIDP

CLDC

KVM

Java 2 Platform Micro Edition(J2METM)

* Under development in JCP

Page 9: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

9

What Makes Up J2EE?● API and Technology specifications● Development and Deployment Platform● Standard and production­quality 

implementation ● Compatibility Test Suite (CTS)● J2EE brand● J2EE Blueprints● Sample codes

Page 10: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

10

Evolution ofEvolution ofEnterprise ApplicationEnterprise Application

FrameworksFrameworks

Page 11: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

11

Evolution of Enterprise Application Framework● Single tier ● Two tier● Three tier 

– RPC based– Remote object based

● Three tier (HTML browser and Web server)● Proprietary application server● Standard application server

Page 12: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

12

About Enterprise Applications ● Things that make up an enterprise 

application– Presentation logic– Business logic– Data access logic (and data model)– System services

● The evolution of enterprise application framework reflects– How flexibly you want to make changes– Where the system services are coming from

Page 13: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

13

Single Tier (Mainframe­based)

● Dumb terminals are directly connected to mainframe

● Centralized model (as opposed distributed model)

● Presentation, business logic, and data access are intertwined in one monolithic mainframe application

Page 14: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

14

Single­Tier: Pros & Cons● Pros:

– No client side management is required– Data consistency is easy to achieve

● Cons:– Functionality (presentation, data model, business 

logic) intertwined, difficult for updates and maintenance and code reuse

Page 15: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

15

Two­Tier

● Fat clients talking to back end database– SQL queries sent, raw data returned

● Presentation,Business logic and Data Model processing logic in client application

Database

SQL request

SQL response

Page 16: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

16

Two­Tier● Pro:

– DB product independence (compared to single­tier model)

● Cons:– Presentation, data model, business logic are intertwined (at 

client side), difficult for updates and maintenance– Data Model is “tightly coupled” to every client: If DB 

Schema changes, all clients break– Updates have to be deployed to all clients making System 

maintenance nightmare– DB connection for every client, thus difficult to scale– Raw data transferred to client for processing causes high 

network traffic

Page 17: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

17

Three­Tier (RPC based)

● Thinner client: business & data model separated from presentation– Business logic and data access logic reside in 

middle tier server while client handles presentation● Middle tier server is now required to handle system 

services– Concurrency control, threading, transaction, security, 

persistence, multiplexing, performance, etc.

Database

SQL request

SQL response

RPC response

RPC request

Page 18: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

18

Three­tier (RPC based): Pros & Cons

● Pro:– Business logic can change more flexibly than 2­

tier model ● Most business logic reside in the middle­tier server

● Cons:– Complexity is introduced in the middle­tier server– Client and middle­tier server is more tightly­

coupled (than the three­tier object based model) – Code is not really reusable (compared to object 

model based)

Page 19: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

19

Three­Tier (Remote Object based)

● Business logic and data model captured in objects– Business logic and data model are now described 

in “abstraction” (interface language)● Object models used: CORBA, RMI, DCOM

– Interface language in CORBA is IDL– Interface language in RMI is Java interface

Database

SQL request

SQL response

Object response

Object request

Page 20: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

20

Three­tier (Remote Object based): Pros & Cons● Pro:

– More loosely coupled than RPC model– Code could be more reusable

● Cons:– Complexity in the middle­tier still need to be 

addressed 

Page 21: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

21

Three­Tier (Web Server)

● Browser handles presentation logic● Browser talks Web server via HTTP protocol● Business logic and data model are handled by 

“dynamic contents generation” technologies (CGI, Servlet/JSP, ASP)

Database

SQL request

SQL response

HTML response

WEB Server

HTML request

Page 22: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

22

Three­tier (Web Server based): Pros & Cons● Pro:

– Ubiquitous client types– Zero client management – Support various client devices

● J2ME­enabled cell­phones

● Cons:– Complexity in the middle­tier still need to be 

addressed 

Page 23: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

23

Trends● Moving from single­tier or two­tier to multi­

tier architecture● Moving from monolithic model to object­

based application model● Moving from application­based client to 

HTML­based client

Page 24: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

24

Multi­tier

 Single­tier vs. Multi­tier

No separation among presentation, business logic, database

Hard to maintain

Separation among presentation, business logic, database

More flexible to change, i.e. presentation can change without affecting other tiers

 Single tier

Page 25: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

25

Object­based

       Monolithic vs. Object­based

1 Binary fileRecompiled, relinked, redeployed every time there is a change

Pluggable partsReusableEnables better designEasier updateImplementation can be separated from interfaceOnly interface is published

 Monolithic

Page 26: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

26

Outstanding Issues & Solution● Comlexity at the middle tier server still remains● Duplicate system services still need to be 

provided for the majority of enterprise applications– Concurrency control, Transactions– Load­balancing, Security– Resource management, Connection pooling

● How to solve this problem?  – Commonly shared container that handles the above 

system services– Proprietary versus Open­standard based

Page 27: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

27

Proprietary Solution● Use "component and container" model 

– Components captures business logic– Container provides system services  

● The contract between components and container is defined in a well­defined but with proprietary manner

● Problem of proprietary solution: Vendor lock­in

● Example: Tuxedo, .NET

Page 28: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

28

Open and Standard Solution● Use "component and container" model in 

which container provides system services in a well­defined and as industry standard

● J2EE is that standard that also provides portability of code because it is based on Java technology and standard­based Java programming APIs

Page 29: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

29

Why J2EE?Why J2EE?

Page 30: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

30

Platform Value to Developers● Can use any J2EE implementation for 

development and deployment – Use production­quality standard implementation 

which is free for development/deployment  – Use high­end commercial J2EE products for 

scalability and fault­tolerance● Vast amount of J2EE community resources

– Many J2EE related books, articles, tutorials, quality code you can use, best practice guidelines, design patterns etc.

● Can use off­the­shelf 3rd­party business components

Page 31: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

31

Platform Value to Vendors

● Vendors work together on specifications and then compete in implementations– In the areas of Scalability, Performance, 

Reliability, Availability, Management and development tools, and so on

● Freedom to innovate while maintaining the portability of applications

● Do not have create/maintain their own proprietary APIs

Page 32: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

32

Platform Value to Business Customers● Application portability ● Many implementation choices are possible 

based on various requirements– Price (free to high­end), scalability (single CPU to 

clustered model), reliability, performance, tools, and more

– Best of breed of applications and platforms● Large developer pool

Page 33: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

33

J2EE APIs &J2EE APIs &TechnologiesTechnologies

Page 34: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

34

J2EE 1.4 APIs and Technologies● J2SE 1.4

(improved)● JAX-RPC (new)● Web Service for

J2EE● J2EE Management● J2EE Deployment● JMX 1.1● JMS 1.1● JTA 1.0

● Servlet 2.4● JSP 2.0● EJB 2.1● JAXR● Connector 1.5● JACC● JAXP 1.2● JavaMail 1.3● JAF 1.0

Page 35: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

35

Java EE 5

● JAX­WS 2.0 & JSR 181● Java Persistence

● EJB 3.0● JAXB 2.0● JavaSever Faces 1.2 – new to Platform● JSP 2.1 – Unification w/ JSF 1.2● StAX – Pull Parser – new to Platform

Page 36: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

36

Servlet & Servlet & JSP (JavaServer Pages)JSP (JavaServer Pages)

Page 37: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

37

Where are Servlet and JSP?

Web Tier EJB Tier

Page 38: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

38

What is a Servlet? 

● Java™ objects which extend the functionality of a HTTP server

● Dynamic contents generation● Better alternative to CGI, NSAPI, ISAPI, 

etc.– Efficient– Platform and server independent– Session management– Java­based

Page 39: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

39

First Servlet Code

Public class HelloServlet extends HttpServlet {

  public void doGet(HttpServletRequest request,                     HttpServletResponse response){    response.setContentType("text/html");    PrintWriter out = response.getWriter();    out.println("<title>Hello World!</title>");  }  ...}

Page 40: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

40

Servlet vs. CGI

CGIBased

Webserver

CGIBased

Webserver

Request CGI1Child for CGI1

CGIBased

Webserver

Servlet Based Webserver

JVM

Request CGI1Child for CGI1

Request Servlet1

CGIBased

Webserver

Servlet Based Webserver

JVMServlet1

Request CGI1Child for CGI1

Request CGI2

Request Servlet1

CGIBased

WebserverChild for CGI2

Servlet Based Webserver

JVMServlet1

Request CGI1Child for CGI1

Request CGI2

Request Servlet1

Request Servlet2

CGIBased

WebserverChild for CGI2

Servlet Based Webserver

JVMServlet1

Servlet2

Request CGI1Child for CGI1

Request CGI2

Request CGI1

Request Servlet1

Request Servlet2

CGIBased

WebserverChild for CGI2

Child for CGI1

Servlet Based Webserver

JVMServlet1

Servlet2

Request CGI1Child for CGI1

Request CGI2

Request CGI1

Request Servlet1

Request Servlet2

Request Servlet1

CGIBased

WebserverChild for CGI2

Child for CGI1

Servlet Based Webserver

JVMServlet1

Servlet2

Request CGI1Child for CGI1

Page 41: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

41

What is JSP Technology?● Enables separation of business logic 

from presentation– Presentation is in the form of HTML or 

XML/XSLT– Business logic is implemented as Java 

Beans or custom tags– Better maintainability, reusability

● Extensible via custom tags● Builds on Servlet technology

Page 42: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

42

What is JSP page?

● A text-based document capable of returning dynamic content to a client browser

● Contains both static and dynamic content– Static content: HTML, XML– Dynamic content: programming code,

and JavaBeans, custom tags

Page 43: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

43

JSP Sample Code<html>   Hello World!<br><jsp:useBean id="clock"             class=“calendar.JspCalendar” /> Today is<ul><li>Day of month: <%= clock.getDayOfMonth() %><li>Year: <%= clock.getYear() %></ul>

</html>

Page 44: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

44

JSP

Servlets and JSP ­ Comparison

• HTML code in Java• Any form of Data• Not easy to author 

a web page

• Java­like code in HTML• Structured Text• Very easy to author a 

web page• Code is compiled into a 

servlet

Servlets

Page 45: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

45

EJBEJB(Enterprise Java (Enterprise Java 

Beans)Beans)

Page 46: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

46

What is EJB Technology?● A server­side component technology ● Easy development and deployment of 

Java technology­based application that are:– Transactional, distributed, multi­tier, 

portable, scalable, secure, …

Page 47: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

47

Why EJB Technology?● Leverages the benefits of component­model

on the server side● Separates business logic from system code

– Container provides system services● Provides framework for portable 

components– Over different J2EE­compliant servers– Over different operational environments

● Enables deployment­time configuration– Deployment descriptor

Page 48: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

48

EJB Architecture

Page 49: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

49

 Remote & Home Interface

source:J2EE tutorial in java.sun.com

Page 50: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

50

Enterprise JavaBeans

Enterprise JavaBeans

Entity Bean  Message­Driven Bean 

Synchronous communication Asynchronous communication

Stateless Stateful

Bean managedPersistence

(BMP)

Container managedPersistence

(CMP)

Session Bean 

Page 51: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

51

Session Beans and Entity Beans

● Represent a business process

● One instance per client

● Short­lived: Life of client is life of bean

● Transient● Doesn’t survive 

server crashes● May be transactional

● Represent business data

● Shared instance for multiple clients

● Long­lived: as long as data in database

● Persistent● Survive server 

crashes● Always transactional 

Session Beans Entity Beans

Page 52: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

52

Entity and Session Beans—Typical Architecture

Page 53: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

53

JMSJMS(Java Message (Java Message 

Service)Service)

Page 54: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

54

Java Message Service (JMS) ● Messaging systems (MOM) provide

– De­coupled communication – Asynchronous communication– Plays a role of centralized post office

● Benefits of Messaging systems– Flexible, Reliable, Scalable communication 

systems● Point­to­Point, Publish and Subscribe● JMS defines standard Java APIs to 

messaging systems

Page 55: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

55

Connector Connector ArchitectureArchitecture

Page 56: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

56

Connector Architecture ● Defines standard API for integrating J2EE 

technology with EIS systems– CICS, SAP, PeopleSoft, etc.

● Before Connector architecture, each App server has to provide an proprietary adaptor for each EIS system– m (# of App servers) x n (# of EIS's) Adaptors

● With Connector architecture, same adaptor works with all J2EE compliant containers– 1 (common to all App servers) x n (# of EIS's)

Adaptors

Page 57: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

57

m x n Problem Before Connector Architecture

AppServer1

AppServer

AppServer3

AppServer2

SAP

EIS4

EIS3

m n

EIS2

Page 58: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

58

JAAS (Part of J2SE 1.4)JAAS (Part of J2SE 1.4)(Java Authentication &(Java Authentication &Authorization Service)Authorization Service)

Page 59: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

59

JAAS: Authentication ● Pluggable authentication framework

– Userid/password– Smartcard– Kerberos– Biometric

● Application portability regardless of authentication schemes underneath– JAAS provides authentication scheme independent 

API– Authentication schemes are specified Login 

configuration file, which will be read by JAAS

Page 60: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

60

JAAS Pluggable Authentication

Page 61: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

61

JAAS: Authorization

● Without JAAS, Java platform security are based on– Where the code originated– Who signed the code

● The JAAS API augments this with – Who’s running the code

● User­based authorization is now possible

Page 62: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

62

Other J2EE APIs &Other J2EE APIs &TechnologiesTechnologies

Page 63: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

63

JNDI

● Java Naming and Directory Interface● Utilized by J2EE applications to locate 

resources and objects in portable fashion– Applications use symbolic names to find 

object references to resources via JNDI– The symbolic names and object references 

have to be configured by system administrator when the application is deployed.

Page 64: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

64

JDBC

● Provides standard Java programming API to relational database – Uses SQL 

● Vendors provide JDBC compliant driver which can be invoked via standard Java programming API

Page 65: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

65

J2EE Management (JSR­77)

● Management applications should be able to discover and interpret the managed data of any J2EE platform

● Single management platform can manage multiple J2EE servers from different vendors

● Management protocol specifications ensure a uniform view by SNMP and WBEM management stations

● Leverages JMX

Page 66: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

66

J2EE Deployment (JSR­88) ­ J2EE 1.4 Tools J2EE Platforms

StandardDeployment API

(Universal Remote)IDEs

Vendor Deploy Tools

Management Tools

Page 67: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

67

J2EE App ServerApp

JMX

JMX

JMX defacto

Dynamic DeploymentJMX API into the J2EE 1.4 platform

To monitor and manage ressources

JMX  Java Management Extension Technology 

Page 68: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

68

JACC (Java Authorization Contract for Containers) ­ J2EE 1.4● Defines contract between J2EE 

containers and authorization policy modules– Provider configuration subcontract

– Policy configuration subcontract

– Policy enforcement subcontract

● Enable application servers to integrate with enterprise user registries and authorization policy infrastructure

Page 69: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

69

J2EE is an End­to­EndJ2EE is an End­to­EndArchitectureArchitecture

Page 70: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

70

The J2EE Platform ArchitectureB2B

Applications

B2CApplications

WebServices

WirelessApplications

Application ServerEnterprise

InformationSystems

ExistingApplications

Page 71: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

71

Client

Client

Client

Client

Client

ClientTier

Enterprise Information  

TierMiddle

Tier

Enterprise Information 

Systems (EIS):RelationalDatabase,

Legacy Applications,

ERP Systems

Enterprise JavaBeans™

Enterprise JavaBeans

Other Services:JNDI, JMS,JavaMail™

J2EEApplication

Server

Web ServerJSP, 

Servlets 

Firewall

J2EE is End­to­End Solution 

HTML/XML

Page 72: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

72

N­tier J2EE Architecture

Web Tier EJB Tier

Page 73: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

73

J2EE J2EE Component & ContainerComponent & Container

ArchitectureArchitecture

Page 74: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

74

JND

I

J2SE

JMS

RM

I/IIO

P

JDB

C

Database

AppClient

App Client Container

HTTP/HTTPS

J2SE

RMI

J2SE

JND

I

JMS

RM

I/IIO

P

JDB

C

JTA JavaMail

JAF JND

I

JMS

RM

I/IIO

P

JDB

C

JTA

JavaMail

JAF

HTTP/HTTPS

Applet Container

Applet JSP Servlet EJB

Web Container EJB Container

RMI

J2SE

J2EE Containers & Components 

Page 75: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

75

ComponentsHandle

Containers and Components

Concurrency Security Availability Scalability Persistence Transaction Life­cycle 

management Management

Presentation Business Logic

ContainersHandle

Page 76: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

76

Containers & Components 

● Containers do their work invisibly– No complicated APIs

– They control by interposition

● Containers implement J2EE– Look the same to components 

– Vendors making the containers have great freedom to innovate

Page 77: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

77

J2EE ApplicationJ2EE ApplicationDevelopment & Deployment Development & Deployment 

Life CycleLife Cycle

Page 78: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

78

J2EE Application Development Lifecycle● Write and compile component code

– Servlet, JSP, EJB

● Write deployment descriptors for components– From Java EE 5, you can use annotations

● Assemble components into ready­to­deployable package

● Deploy the package on a server

Page 79: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

79

Creation Assembly Deployment

Created by Component Developer

Assembledand Augmentedby Application 

Assembler

Processed by Deployer

Deploy

EnterpriseComponents

J2EE Container

J2EE APPJ2EE Modules

Life­cycle Illustration

Page 80: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

80

J2EE Development Roles

● Component provider– Bean provider

● Application assembler● Deployer● Platform provider

– Container provider● Tools provider● System administrator

Page 81: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

81

The Deployment Descriptor● Gives the container instructions on how to 

manage and control behaviors of the J2EE components– Transaction– Security– Persistence

● Allows declarative customization (as opposed to programming customization)– XML file

● Enables portability of code

Page 82: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

82

   EJB Packaging

Page 83: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

83

Package Files● J2EE Application (sometimes

called EJB application)– *.EAR file– Can contain Web tier modules (*.WAR

files) and EJB-JAR files● EJB-JAR (EJB Module)

– *.jar file– Some container allows direct

deployment of EJB-JAR files● EJB Client Jar

Page 84: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

84

EJB­JAR file● Standard format for packaging

enterprise beans● Used to package un-assembled and

assembled enterprise beans● Must contain deployment descriptor● For each enterprise bean, ejb-jar file

must contain following class files– Enterprise bean class– Enterprise bean home and remote interface– Primary key class if the bean is entity bean

Page 85: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

85

EJB™ Role: Bean Provider

beanclass

homeinterface

remoteinterface

Deploymentdescriptor

Deployment tools

homeinterface

remoteinterface

beanclass

Deploymentdescriptor

Page 86: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

86

*.EAR file● Contains both Web-tier modules and

EJB Modules (EJB-JAR files)– It can contain multiple EJB-JAR files

● Has its own deployment descriptor– application.xml

● For deploying EJB application over J2EE RI, you have to create *.EAR file even if you have only one EJB-JAR file and no Web modules– Some container allows direct deployment

of EJB-JAR

Page 87: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

87

Example: Deployment Descriptor of J2EE Application: application.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE application PUBLIC '-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN' 'http://java.sun.com/dtd/application_1_3.dtd'>

<application> <display-name>interest</display-name> <description>Application description</description> <module> <ejb>ejb-jar-ic.jar</ejb> </module></application>

Page 88: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

88

EJB™ Role: Application Assembler Web jars (.war):

servlets, JSP…

Deployment tools

Application Jar (.ear):

ejb-jar (.jar)

Deploymentdescriptor

Page 89: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

89

EJB™ Role: Deployer

Deployment tools

Database

Container

contextmeta attributes

Deploymentdescriptor

Application Jar

client

Client stubs

EJBHome EJBObject Enterprise Beans

Page 90: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

90

J2EE ApplicationJ2EE ApplicationAnatomiesAnatomies

Page 91: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

91

DB & EISResources

Browser

Stand­alone

Web Server EJB Server

Web Server EJB Server

Possible J2EE Application Anatomies

Page 92: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

92

J2EE Application Anatomies● 4­tier J2EE applications

– HTML client, JSP/Servlets, EJB, JDBC/Connector

● 3­tier J2EE applications– HTML client, JSP/Servlets, JDBC

● 3­tier J2EE applications– EJB standalone applications, EJB, 

JDBC/Connector

● B2B Enterprise applications– J2EE platform to J2EE platform through the 

exchange of JMS or XML­based messages

Page 93: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

93

Which One to Use?● Depends on several factors

– Requirements of applications– Availability of EJB tier– Availability of developer resource

Page 94: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

94

Why J2EE Why J2EE for Web Services?for Web Services?

Page 95: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

95

Why J2EE for Web Services?● Web services is just one of many 

service delivery channels of J2EE– No architectural change is required

– Existing J2EE components can be easily exposed as Web services

● Many benefits of J2EE are preservedfor Web services– Portability, Scalability, Reliability

– No single­vendor lock­in

Page 96: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

96

Web Services Model Over J2EE

DBMS

Existing Apps

Existing Apps

Services

Rich Clients

MIDP Devices

Browsers

HTML/XML

XMLP/SOAP

XHTML/WML

J2EE Server JSP™/ JavaServlet API / EJB™

JDBC

JMSConnectors

XMLP/SOAP

JSPJSP

EJBEJB

XMLP/SOAP

Page 97: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

97

Where Are We Now?● Java APIs for Web Services are being 

developed very rapidly• Web services support on WUST (WSDL, UDDI, 

SOAP) ready now• Next layer Web services work in progress

● Tools are available now for exposing existing J2EE components as Web services

● J2EE community has defined overall framework for Web Services (J2EE 1.4, Web services for J2EE)

Page 98: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

98

Design Goals J2EE 1.4 Web Services Framework ● Portability of Web services component 

– Over different vendor platform– Over different operational environment

● Leveraging existing J2EE programming models for service implementation 

● Easy to program and deploy– High­level Java APIs– Use existing deployment model

Page 99: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

99

J2EE 1.4 Web Services Framework

● J2EE 1.4 (JSR 151)● Web services for J2EE (JSR 109)● JAX­RPC (JSR 101)● JAXR (Java API for XML Registries)● SAAJ (SOAP with Attachments API for 

Java)● EJB 2.1

Page 100: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

100

J2EE 1.4 J2EE 1.4 Standard Implementation,Standard Implementation,Compatibility Suite, BrandCompatibility Suite, Brand

Page 101: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

101

Standard Implementation● Under J2EE 1.4 SDK, it is Sun Java 

Application Server Platform Edition 8● Production­quality J2EE 1.4 compliant 

app server● Free to develop and free to deploy● Seamless upgrade path to Sun Java 

Application Server Enterprise Edition

Page 102: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

102

Compatibility Test Suite (CTS)

● Ultimate Java™ technology mission:– Write Once, Run Anywhere™

– My Java­based application runs on any compatible Java virtual machines

– My J2EE based technology­based application will run on any J2EE based Compatible platforms

Page 103: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

103

J2EE Application Verification Kit (J2EE AVK)● How can I test my J2EE application 

portability?• Obtain the J2EE RI 1.3.1 and the J2EE 

Application Verification Kit (J2EE AVK)● Self verification of application

– Static verification– Dynamic verification

● Obtain the tests results, verify that all criteria are met

Page 104: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

104

Compatible Products for the J2EE Platform (Brand)ATGBea SystemsBorlandComputer

AssociatesFujitsuHitachiHPIBMIONA

iPlanetMacromediaNECOraclePramatiSilverStreamSybaseTalarianTrifork

Page 105: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

105

The J2EE Platform “Ecosystem,”Application Servers and…● Tools

– IDE’s: Borland JBuilder Enterprise, WebGain Visual Cafe’, IBM Visual Age for Java™, Forte™ for Java™, Oracle JDeveloper, Macromedia Kawa

– Modeling, Performance, Testing, etc.● Enterprise Integration: Connectors, 

Java Message Service (JMS) API, XML● Components● Frameworks● Applications

Page 106: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

106

Major Investment in Compatibility by the Industry● Sun has spent scores of engineer years 

developing tests● Licensees have spent scores of engineer 

years passing the tests● Testing investment on top of specification 

investment, implementation investment, business investments

● In total, tens of millions of dollars invested in J2EE platform compatibility by the industry

Page 107: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

107

J2EE Blueprint &J2EE Blueprint &Pet Store ApplicationPet Store Application

Page 108: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

108

J2EE Blueprint● Best practice guidelines, design patterns 

and design principles– MVC pattern

● Covers all tiers– Client tier– Web tier– Business logic (EJB) tier– Database access tier

● Sample codes come with J2EE 1.4 SDK– Java Pet Store, Adventure builder

Page 109: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

109

How to Get StartedHow to Get Started

Page 110: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

110

Step1: For Beginners and Intermediate J2EE Programmers● Follow along with this course● Start using J2EE IDE of your choice ● Try open source IDE's

– NetBeans IDE 5.0 (netbeans.org)● Excellent out of the box J2EE support● We will use NetBeans IDE 5.0 or NetBeans IDE 5.5 

as our default IDE in this course● Lots of tutorials

– Eclipse

Page 111: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

111

Step2: Next Step (For Advanced J2EE Programmers) ● Learn practical open­source solutions

– Spring framework (for light­weight framework)– Hibernate (for O/R mapping)– JDO (for transparent persistence)– Struts, WebWork, Tapestry (for Web­tier 

frameworks)– JUnit (for unit testing)– Log4j (for logging)– Many more

Page 112: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

112

Step3: Next Step (For Advanced J2EE Programmers) ● There is no shortage of quality J2EE 

online resources– java.sun.com/j2ee– www.theserverside.com– www.javapassion.com/j2ee/J2EEresources.html#J2

EEResourceSites

Page 113: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

113

Summary &Summary &ResourcesResources

Page 114: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

114

Summary● J2EE is the platform of choice for 

development and deployment of n­tier, web­based, transactional, component­based enterprise applications

● J2EE is standard­based architecture● J2EE is all about community● J2EE evolves according to the needs 

of the industry

Page 115: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

115

Resources● J2EE Home page

– java.sun.com/j2ee

● J2EE 1.4 SDK– java.sun.com/j2ee/1.4/download.html#appserv

● J2EE 1.4 Tutorial– java.sun.com/j2ee/1.4/download.html#appserv 

● J2EE Blueprints– java.sun.com/blueprints/enterprise/index.html

Page 116: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

116

NetBeans Resources● NetBeans IDE Homesite

– http://www.netbeans.org

● NetBeans IDE Tutorials/Articles Master index– http://www.javapassion.com/netbeans

/masterindex.html

Page 117: Introduction to Java EE (J2EE) - École pour l ...ricou/J2EEOverview2.pdf · Single Tier (Mainframebased) ... (compared to singletier model) ... – Many J2EE related books, articles,

117

Passion!Passion!