Index_S

S

sample application

addressing performance problems, 643

caching, 646

synchronization, 648

WAS Tool, 644

architecture, 209, 248

<i>business logic, Implementing, 428

business interfaces, defining, 429

business interfaces, implementing, 432

custom bean definitions, 436

JMS propagating data updates, 435

caching, 247

data access, 278-83, 319

DAO pattern, 319, 353

JDBC, 319

deploying

creating connection pools, 602

creating JMS destinations, 603

JBoss deployment descriptors, 605

JBoss server, 601, 607

parameters for deployment, 600

design assumptions, 182

EJBs, 222, 227, 387, 410

accessing, 417

BoxOffice, using business methods interface, 387

implementing, 410

infrastructure framework, 397

bean factory, using, 401

JavaBeans, using, 397

introduction, 179

JBoss server and, 199

JDBC abstraction framework, 324

JMS, 234

JSP views

JSTL, 541

limitations, 183

oracle database and, 200

packaging, 592

Ant build tool, 594

EAR deployment, 593

performance, 198

revalidation, 670

session state, holding, 389

web containers preferred to SFSBs, reasons, 389

software issues, 200

stages of delivery, 183

transaction management, 213

user interface

box office users, 198

public internet users, 183

users, 180

administrators, 182

box office users, 181

public internet users, 180

using JProbe with sample application, 627, 644, 651

view technologies, 519

formatting presented information, 519

JSP views, 538

model objects, 521

Velocity, 548

XMLC, 564

XSLT, 555

web application framework, 467

controller implementation example, 481

data validation, 498

designing, 468

implementing web tier, 506

MVC control flow, 469

request handling, 508

workflow refinements, 479

XML, 245

scalability

addressing problems, 630

avoiding use of container services, 631

server choice and configuration, 630

caching, 632

clusters and, 613

compared to performance, 613

definition, 613

distributed architecture, 205

enterprise architecture goals, 16, 614

J2EE design, 678

locating problems, 623

layered testing, 623

profiling tools, 623

major issues, 672

maximizing, 208

problems with, 613

risk management, 69

robust and scalable architectures, 207

SFSB (stateful session beans) limitations, 366, 373

passivation/reactivation overcoming, 366

state management, 26

testing, 105

using EJBs, 22

scheduling

EJB container, 222

scope attribute

<jsp:useBean>element, 531

scoping

variable scoping, 151

screens, sample application, 185

book seats screen, 191

confirm reservation screen, 196

display show screen, 189

payment details screen, 194

show reservation screen, 192

welcome screen, 188

seat reservation system

see sample application

security

see also authentication.

see also authorization.

custom security managers, 237

declarative security using EJB, 23

disadvantages of EJBs.216

J2EE security, 235

JAAS, 237

MDBs, 231

programmatic security using EJB, 23

role-based security, 235

role- based security using EJB, 23

testing web specific issues, 100

Using EJBs, 23

when to use messaging, 233

self-documentation, 159

semantic data valldation, 496

Seppaku pattern, 303

sequence entity beans, 271

Seriallzable Interface, java.io package, 653

serialization, 653

serialization

optimizing serialization to move data efficiently, 659

custom serialization, 661

non issues, 660

primitive fields, 659

transient data, 659

serilizable objects, 653

using EJBs, 21

server

choosing application server, 45-55

class loading in J2EE and, 590

configuring server to run application, 596

authentication, 597

creating connection pools, 597

creating JMS destinations, 597

installing libraries, 598

integrating JProbe with application server, 625

tuning server, 630

server affinity

distributed architecture, 206

SLSB (stateless session beans) avoiding, 364

state management, 26

service definition files, JBoss, 601

installing service definition files, 604

Ant build tool, 604

JMX MBeans, 602

Service Locator pattern, 418

advantages, EJB access, 418

typed, accessing EJB using, 418

AbstractJndiLocator class, 419

afterPropertiesSet/located() methods, 419

getjndiName/Set/located () methods, 419

AbstractLocalStatelessSessionServiceLocator

subclass, 422

bean definition, 422

BoxOfficeFactory interface, 421

LocalSLSBBoxOfficeFactory implementation class, 421

getBoxOffice() method, 422

setEjbHome() method, 421

transparent dynamic proxy as alternative to, 422

UML class diagram, 421

service() method, HttpServlet class, 669

Servlet 2.3 specification (SRV.9.11)

class loading recommendations, 588

Java 1.3 extension mechanism, 589

web site, 30

Servlet Front strategy

compared to JSP Front strategy, 454

Front Controller pattern, 454

ServletContext interface, javax.servlet package

getRealPath() method, 698

ServletDispatcher class, webwork.dispatcher package, 464

<servlet-mapping> element

configuring ControllerServlet class, 472

servlets

compared to CGI, 443

data access, 276

Java web development, 443

limitations, 443

protecting interface code, 131

unit testing web tier components, 101

using JSP with servlets, 446

Front Controller pattern, 447

ServletUnit project

web sites, 101

session beans

accessing entity beans, 287

entity bean mediator, 291

errors, EJB handling, 379

EJB design/implementation guidelines, 380

SFSB (stateful session beans), 366

SLSB (stateless session beans), 364

session EJBs

data access, 275

Session Facade design patterns

implementing in distributed J2EE applications using

SLSB, 374

RMI no. reduction, performance advantages, 374

implications of using EJB, 21

local interfaces, 223

principal, 287

Session Managed Persistence

data access, 275

session management, web tier, 488

using browser, 490

cookies, 490

hidden form fields, 491

using J2EE server, 488

clustering and replication, 488

optimization, 489

SessionBean interface, javax.ejb, 413

all session beans implementing, 413

SessionContext class, EJBs, 94

SessionSynchronization interface, javax.ejb, 370

methods, 370

afterCompletion(), 370

SFSB (stateful session beans) implementing, 370

CMT use only, transaction attributes allowed, 371

design & security concerns, 371

setAttribute method, HttpSession object, 488

setDateHeader() method, HttpServletResponse

interface, 668

setExceptionTranslater() method, JdbcTemplate class, 337

setFixture() method, AbstractTest class, 620

setHeader() method, HttpServletResponse interface, 468

setlgnoreWarnings() method, JdbcTemplate class, 337

setModel() method, ControllerContext interface, 462

setPropertyValue/~Values() methods, BeanWrapper, 398

example, 399

setRollbackOnly() method, EJBContext, 386

SEVERE log level constant, 163

SFSB (stateful session beans), 366

as MVC controllers, using, 373

NOT using, reasons for, 366

performance & scalability, SFSB

passivation/reactivation, 366, 373

reliability, server state replication, 368

protecting from concurrent calls, 371

SessionSynchronization, implementing, 370

SLSB achieving stateful functionality, 371

using, circumstances when, 370

guidelines, 390

web containers preferred, sample application state

holding, 389

short circuit evaluation

avoiding NullPointerExceptions, 157

show reservation screen

sample application user interface,, 192

SimpleDateFormat class, java.text package, java.text package, 539, 694

simplicity

J2EE design, 675

Singleton design pattern, 139

BoxOffice/Calendar objects as singletons,

disadavantages, 401

EJB problem, 222

using EJBs, 21

singletons

context object, 140

EJB problem, 220-22

interfaces, 140

Java singletons, 220

JMX MBeans, 222

OO design principles summarized, 174

RMI objects, 221

startup classes, 222

stateless session beans pseudo-cache, 221

using application registry, 139

skills

risk management, 68

SLSB (stateless session beans), 364, 371

benefits, 364

disadvantages, 364

EJB container managing SLSB pool, 364

reliable, avoiding server afinity, 364

EJB Command, implementing in distributed J2EE

applications, 374

internal state, maintaining, 365

J2EE design, 678

pooling, 365

Session Facade, implementing in distributed J2EE

applications, 374

stateful functionality, achieving, 371

object parameter, passing, 372

RequiredWorkflowException mimicking SFSB state

machine, 372

smart model objects, 525

adapter beans, 526

SOAP (Simple Object Access Protocol)

Apache Axis SOAP implementation web site, 19

J2EE design, 19

Source interface, javax.xml.transform package, 698

specification

choosing application server, 48

determining version, 44

spike solution

see performance.

SpritCache caching product, 637

SQL (Structured Query language)

EJB QL compared, 298

SQL Routines

SQLJ structure, 313

SQL tag library

see tag library, SQL.

SQL Types

SQLJ structure, 313

SQL-based database access, 312

JDBC (Java DataBase Connectivity), 312, 677

SQLJ. 313

SQLException class

compared to DataAccessException class, 328

exception handling, 320

getErrorCode() method, 322

getNextException() method, 322

getSQLState() method, 322

limitations, 327

SQLExceptionTranslater Interface, 331

implemented by OracleSQLExceptionTranslater class,

332

implemented by SQLStateSQLExceptionTranslater

class, 332

JDBC abstraction framework, 336

SqlFunction class

JDBC abstraction framework, 346

run() method, 346

SQLJ

advantages, 314

binding Java variables to SQL, 314

compared to JDBC, 313

disadvantages, 314

escaping in SQL, 314

example of using, 314

SQL-based database access, 313

structure

Embedded SQL, 313

SQL Routines, 313

SQL Types, 313

SqlOperation class

JDBC abstraction framework, 344

SqlParameter class, 344

SqlQuery class

execute() method, 345, 357, 645

findObject() method, 345

JDBC abstraction framework, 344

newResultReader() method, 344

Template Method design pattern, 344

SQLStateSQLException Translater class

class code, 332

converting JDBC exceptions to generic exceptions, 332

implements SQLException Translater interface, 332

SqlUpdate class

JDBC abstraction framework, 347

performing updates, 350

update() method, 347, 350

SQLWarning class

exception handling, 323

staging environment, 59

standalone clients

state management, 26

startup classes

singletons, 222

state

distributed architecture, 205, 206, 207

internal state, SLSB maintaining, 365

management of state, 26

web tier session management, 488

maximizing reliability and scalability, 208

replication, 368

sample application holding, 389

web containers preferred to SFSBs, reasons, 389

stateless session beans pseudo-cache, 221, 365

stateful session beans

see SFSB.

StatefulSessionContext object, Oracle 9iAS, 369

SSFB replication imitating HttpSession behavior, 369

stateless session beans

see SLSB.

Statement interface, 323

compared to PreparedStatement interface, 323

JDBC (Java DataBase Connectivity), 323

unique key generation, 273

static attributes

decoupling controllers and views, 519

template page inclusion, 575

static variables

coding standards, 145

stored procedures, RDBMS, 259-62

StoredProcedure class

CallableStatement interface and, 347, 351

calling stored procedures, 350, 358

JDBC abstraction framework, 347

Strategy design pattern, 119

advantages, 122

disadvantages, 122

extensibility, 120

JDBC abstraction framework, 334

MultiActionController class, 484

OO design principles summarized, 172

overriding methods, 154

protected instance variables, 150

Template Method pattern compared, 120

stress testing, 105

definition, 76

Microsoft's Web Application Stress Tool, 107

web applications, 110

web interfaces, 107

StringTokenizer class, 81

Struts

compared to Maverick, 461

compared to WebWork, 464

declarative exception handling, 461

description, 457

integrating web application into overall architecture,

465

JSP tag libraries, 459

nested properties, 460

limitations, 460

MVC web frameworks, 457

org.apache.struts.action package, 458

org.apache.struts.util package, 459

stub classes

writing effective tests, 87

sub-classing

abstract classes, 155

subscription durability

MDBs, 232

when to use messaging, 233

superclasses

accessing instance variables. 152

concrete inheritance, 115

exception handling, 131

exposing protected instance variables, 155

inheritance, 116

inversion of control, 117

making methods final, 154

public superclass methods, 117

subclass code compromising, 150

subclass interaction, 125

subclasses corrupting, 153

Supports transaction attribute, CMT, 382, 386

supports() method, Validator interface, 498

implementing, 499

surrogate keys, 270

Swing GUI libraries

MVC (Model View Controller) pattern, 449

switch statements

reflection, 133

synchronization

caching, 245

code-level optimization, 641

EJB programming restrictions, 219

guidelines for using, 641

lock splitting, 642

sample application performance, 648

sessions, see SessionSynchronization.

using EJBs, 23

syntactic data validation, 496

system exceptions, EJB handling, 380

discarding EJB instance, 380

logging exception, 380

RemoteException, 387

rolling back transaction irreversibly, 380

System.out

logging usage, 161



Expert One-on-One J2EE Design and Development
Microsoft Office PowerPoint 2007 On Demand
ISBN: B0085SG5O4
EAN: 2147483647
Year: 2005
Pages: 183

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net