CONTENTS | PREV | NEXT | INDEX J2EE BluePrints


Index

A

applets 26
accessing a UserTransaction 35
deploying 58
security 59
session management 59
transactions 202

application clients 19, 26
accessing a UserTransaction 35
client of EJB tier 61
client of Web tier 60
deployment 188
transactions 202

application scenarios 14
business-to-business 20
multitier 16
sample application 242-247
stand-alone client 18
Web-centric 19

archive files
EAR 168
EJB JAR 169
JAR 46
WAR 172

auditing 237

authentication 37-38, 216
basic 38, 220
call patterns 223
client certificate 38
configuration 221
context 216
delegating 217
digest 38, 220
EIS resource 224
application-managed 224
container-managed 224
form-based 38, 221
configuration 186
sample application 303
lazy 220
mechanisms 220
mutual 216, 221
role of references 225
sample application 303-306
scenarios 218

authenticators 216

authorization 37, 39, 225
consistency across components 228
declarative versus programmatic 228
enterprise information systems 161
example 232
programmatic 227

auto-registration 225

B

basic authentication
See authentication, basic.

business logic 114

business objects 113
controlling access to 117
implemented by enterprise beans 118
maintaining state 115
operating on shared data 116
participation in transactions 116
remote accessibility 117
requirements of 115-117
reusability 117
servicing multiple clients 116

C

CGI 77

class files 46

client certificate authentication
See authentication, client certificate.

client tier 6

clients
EIS. See enterprise information systems, clients.
EJB. See EJB clients.
impact of deployment mechanisms 52
impact of host platform 52
impact of network service 50
impact of programming language 53
impact of security constraints 51
operating environment 50
overview 53
supporting multiple types 68
types 54
Visual Basic
See Visual Basic clients.
Web. See Web clients.

Common Gateway Interface 77

components 25
applets 26
application clients 26
EJB 28
enterprise beans 28
portability 10
Web 26

confidentiality mechanisms 235

connection factory references 180
data source 159
mail session 181

connections
See enterprise information systems, connections.

Connector architecture 41, 161

containers 26
applet 26
APIs 29
application client 26
APIs 29
EJB 28
APIs 29
JSP 27
platform configuration 8
servlet 27
Web 27
APIs 29

credentials 218

D

data access objects 130, 276
as migration path to container-managed persistence 133
clarifying session bean implementa-
tions 131
example 131
generated by tools 133
providing database portability 133
sample application 276

dependent objects 134, 276

deployment descriptors 33, 174
application 34
application client 34
auth-constraint element 230
common elements 176
component 34
container-transaction element 184
EJB 34
ejb-link element 179
ejb-name element 179
ejb-ref element 178, 225
ejb-ref-name element 179
ejb-ref-type element 179
env-entry element 176
error-page element 186
login-config element 186, 221
method-permission element 39, 183, 232
persistence-type element 184
res-auth element 159, 181, 224
resource-ref element 180, 224-225
res-type element 181
sample application 300
security-constraint element 186, 230
security-role element 182
security-role-ref element 182, 228
servlet element 185
servlet-mapping element 185
transport-guarantee element 222, 308
versioning 193
Web 34

deployment tools
features
name collision management 193
name space management 193
remote accessibility 192
single point of entry 191
undeployment capability 192
vendor-specific information 189
requirements 187

digest authentication
See authentication, digest.

dynamic content generators
Active Server Pages 67
CGI scripts 77
JSP pages 78
servlets 77

E

EAR files 168

EJB clients 18, 61
advantages 63
deployment 62
disadvantages 64
protocols 61
security 63
transactions 62

EJB components
See enterprise beans.

EJB containers 118

EJB JAR files 169

EJB tier 6

EJBHome 119

EJBObject 120

email
sending from enterprise bean 298

enterprise applications
development challenges 3
enhancing application developer productivity 3
ensuring choice in servers, tools, and components 5
ensuring scalability 4
integrating with information
systems 5
maintaining security 5

enterprise beans 28, 118
accessing a UserTransaction 35
appropriate uses of 130
as COM objects 65
class 120
client view 119
implementation 121
create methods 120
deployment 187
EntityBean 120
finder methods 120
home interface 119
operations 119
implementing business objects 118
instances
creating 119
obtaining handles to 120
removing 119
master-detail relationships
implementing the master 137
modeling 136
obtaining a handle to home interface 119
packaging into EJB JAR files 170
by related functionality 171
by security profile 172
interrelated 172
with circular dependencies 172
portability 118
protected 223
protecting 231
references 177-180
remote interface 120
operations 120
sample application 275
See also entity beans.
See also session beans.
service information decoupled from implementation 119
SessionBean 120
transaction attributes
See transaction attributes.
transactions 203-207
types 28, 118

enterprise information system tier 6

enterprise information systems 141
access objects 151
examples 152
guidelines 152
scenarios 153
accessing 146
authorization 161
capabilities 142
client API 149
clients 67
connections
establishing 154
life cycle 155
managing 155
managing by component type 156
Connector architecture 161
integration
role of tools 150
security architecture 157
integration scenarios 143
distributed purchasing applica-
tion 145
employee self-service applica-
tion 144
e-store application 143
limitations 142
relational databases
accessing with JDBC 146
multiple concurrent connections 156
resource signon 158
application-managed 160
container-managed 159
transactions
JTA 208
resource manager local 209
using 208

Enterprise JavaBeans (EJB)
architecture 28
, 118
See also enterprise beans.

entity beans 28, 121
bean-managed persistence 124
characteristics 122
container-managed persistence 125
example 123
instances
finding 120
obtaining primary key 120
lifetime 122
persistence 124
sample application 275
state after system crash 122

error pages
invoking automatically 186

F

form-based authentication
See authentication, form-based.

front components 80-81

H

HTML 45, 55

HTTP 42
properties 55

I

identity selection 229

IDL 43

idlj compiler 43

image files 46

impersonation 216

integrity mechanisms 234

internationalization 88
data handling 89
data input 89
data storage 90
locale-independent data format-
ting 90

J

J2EE applications 34, 168
deployment tasks 187
EJB-centric 96
packaging and deployment activities 165
scenarios
See application scenarios.
supporting multiple types of clients 68
Web-centric 96

J2EE BluePrints
program 313
programming model 2

J2EE Compatibility Test Suite 9

J2EE Developer's Guide xix

J2EE environment 6

J2EE platform 6
as complement to EJB architecture 9
benefits 10
choice in servers, tools, and components 13
enhanced application development productivity 11
integration with enterprise information systems 12
scalability 12
simplified security model 14
communication technologies 41
component technologies 25
data formats 45
database API 40
deployment services 33
email API 45
Internet protocols 42
messaging API 44
messaging technologies 44
naming and directory API 40
naming services 33
OMG protocols 43
remote object method invocation API 42
role of containers 7
saving application state 274
security services 37
service technologies 39
Standard Extension APIs 29
support for business logic 9
support for component portability 10
support for multiple client types 8
transaction API 40
transaction services 35

J2EE roles 30
Application Assembler 31
Application Component Provider 31
Deployer 32
J2EE Product Provider 31
packaging and deployment tasks 165-168
System Administrator 32
Tool Provider 32

J2EE SDK 9

J2EE specifications xix, 9

JAF (JavaBeans Activation Framework) 45

JAR files 46

Java IDL 43

Java Message Service (JMS) 44

Java Naming and Directory Interface
(JNDI) 40

Java Remote Method Protocol (JRMP) 42

Java Transaction API (JTA) 40, 201

Java Transaction Service (JTS) 40, 201

JavaBeans Activation Framework (JAF) 45

JavaBeans components, in JSP pages 86

JavaMail 45

JavaServer Pages (JSP) technology 27, 78
See also JSP pages.

JDBC 40

JMS (Java Message Service) 44

JNDI (Java Naming and Directory
Interface) 40

JRMP (Java Remote Method Protocol) 42

JSP pages 27, 78
as front components 81
as presentation components 82
custom tags 86-87
designing 85
error pages 186
expressions 88
JavaBeans components 86
locale-specific 94-96
page directive 88, 95
presentation components
sample application 266
scriptlets 88
tag libraries 86
taglib directive 86
templates 83
sample application 260
versus servlets 85

JTA (Java Transaction API) 40

JTA transactions
See transactions, JTA.

JTS (Java Transaction Service) 40

L

locales 88

localization 89

localized content
delivering 92
list resource bundles 92-94
locale-specific JSP pages 94-96

M

message digests 234

message signatures 234

messages
ensuring privacy of 235
preventing tampering 234
security threats 234

messaging
point-to-point 44
publish-subscribe 44

middle tier 6

modules
application client 34
packaging 174
EJB 34
contents 169
packaging 169
J2EE 34
types 34
Web 34
contents 172
packaging 172

mutual authentication
See authentication, mutual.

MVC architecture 21
Controller 22
in EJB-centric applications 104-107
multiple clients 69
sample application
See sample application, Controller.
in EJB-centric applications 103
Model 21
in EJB-centric applications 104
multiple clients 68
sample application 273-278
sample application 21, 254-255
Model-View synchronization 294
support for mutiple types of clients 68
View 22
in EJB-centric applications 104
multiple clients 69
sample application 255-273

N

naming contexts 33
environment 33, 178

naming environments 33
entries 176

naming subcontexts 33
ejb 33, 177
jdbc 33, 180
mail 180

P

portability
affected by use of transactions 199
component 10
enterprise bean 118

presentation components 80, 82

principal mapping 224

principals 37

protection domains 217

R

references
connection factory 180
data source 159
mail session 181
enterprise bean 177-180

resources
protected 230
unprotected 231

RMI 42

rmic compiler 43

RMI-IIOP 43

S

sample application
adding users 309
Controller 280-283
EJB tier 281
implementation 282-296
interaction between objects 281
ModelManager 294
ModelUpdateManager 296
RequestProcessor 284
RequestToEventTrans-
lator
285
ScreenFlowManager 293
ShoppingClientController-
EJB
288
ShoppingClientController-
WebImpl
287
StateMachine 289
Web tier 281
data access objects 276
deployment descriptors 300
design goals 253
email, sending from enterprise bean 298
enterprise beans 275
enterprise requirements 15
entity beans 275
functional specification 247
functionality 242
HTTPSession 274
JSP pages
cart.jsp 269
index.jsp 266
Main.jsp 283
presentation components 266
productcategory.jsp 267
ScreenDefinitions.jsp 264
template 260
template.jsp 261-264
insert tag 262, 264
Model 273-278
Model-View synchronization 294
modules 248, 250
MVC architecture 21, 254-255
obtaining xviii
persistent data 277
relationships between business objects 280
saving state 273
scenarios 242
administration 245
business-to-business 246
shopping 242
screens 256-258
home 266
product category 267
selecting 264
shopping cart 269
security APIs 310
use in EJB tier 310
use in Web tier 310
security implementation
authentication 303-306
confidentiality 308
handling unauthenticated users 306
user administration 308-309
security requirements
authorization 302
confidentiality 302
user administration 302
user authentication 302
ServletContext 274
session beans
stateful 275
stateless 275
signing in 301
signing up 301
stateless services 298
transactions 300
user interface
shopping interaction 256-258
user profiles, maintaining 308
View 255-273

security
accessor components 229
attacks on messages 234
attributes 226
capabilities 226
declarative 38
mechanisms 216
auditing 237
authentication 216
authorization 225
confidentiality 235
integrity 234
mutual authentication 216
See also authentication.
See also authorization.
permissions 226
principal mapping 224
programmatic 38
protection domains 217
roles 39, 227
mapping to group identities 227
mapping to principal identities 227
sample application 307
sample application 301-311
threats to 215

servlets 26, 77
as front components 81
as presentation components 82
limitations of embedded HTML 79
used to extend Web server 85
used to generate binary data 84
versus JSP pages 85

session beans 28, 125
as facade to entity beans 135
stateful 126
characteristics 126
example 127
lifetime 126
sample application 275
stateless 128
characteristics 128
example 129
sample application 275

SSL 42

T

TCP/IP 42

tiers
client 6
EJB 6
enterprise information system 6
middle 6
Web 6

transaction attributes 205
assigning 184
for entity beans 205
for session beans 205
guidelines 207
Mandatory 206
Never 206
NotSupported 206
Required 205
RequiresNew 206
Supports 206

transactions 35, 197
ACID properties 197
applets 202
application clients 202
attributes
See transaction attributes.
compensating 210
pitfalls 211
creating 35
demarcation
bean-managed 37, 204
container-managed 37, 204
benefits of 205
guidelines 207
enterprise beans 36, 203-207
setRollbackOnly 205
enterprise informations systems 208
isolation level 212
guidelines 212
J2EE platform
characteristics 198
scenarios 199
J2EE SDK 198
JTA 35, 200
benefits 201
properties 197
atomicity 197
consistency 197
durability 198
isolation 197
resource manager local 35, 209
Web components 36, 202

U

UserTransaction
accessing 35
from applets 35
from application clients 35
from enterprise beans 35
from Web components 36

V

value objects 134, 276
example 134
immutability 135
properties 134
used to conserve system resources 134

Visual Basic clients 19, 65
limitations 66

W

WAR files 172

Web applications 75
types 96

Web clients
applets 58
See also applets.
browsers 58
content format 55
plug-ins 59
stand-alone 60
Java 60
non-Java 61
transport protocols 55
types 57

Web components 26, 75
accessing a UserTransaction 36
as front components 80-81
as presentation components 80, 82
deployment 188
limitations on transactions 36
packaging into WAR files 173
cross-dependent servlets 173
cross-linked static content 173
roles 80
using transactions 202

Web containers 76

Web resources 220
confidentiality across absolute links 236
confidentiality across relative links 237
protected 220
protecting 230

Web tier 6

X

XML 17, 20, 46, 56
guidelines 57


CONTENTS | PREV | NEXT | INDEX
Copyright © 2001 Sun Microsystems, Inc. All Rights Reserved.