Index

A

access

business layers, 103-105

data source resource references, 67-68

getters and setters, 41

iBATIS frameworks, 68, 71-75

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

loggers, 43-44

role-based, 151

Web services, 189

ACID (Atomicity, Consistency, Isolation, and Durability) tests, 82

ad hoc project methodology, 254

adding

bookmarks, 165

filters to login processes, 236-237

flexibility into layers, 21

shared libraries, 116

Spring DAO frameworks, 76-80

aggregation, 151

portlets, 154

agile approaches to unit testing, 59

agile project methodology, 254

Alcott, Tom, 34

aliases, creating authentication, 269-271

analysis, packages, 244

annotations, 84-88

@JPAManager, 88

@Lob, 86

@ManytoOne, 86

@OnetoMany, 86

@Remote, 95

@SupressWarnings, 88

APIs (application programming interfaces)

Java Logging API, 45-47

Java Persistence, 83-97

Java Portlet, 156-160

preferences, 160-161

JAX-WS, 181-182

applicationContext.xml file, 78

application programming interfaces. See APIs

applications

architecture

architects, 2-3

building blocks of, 16-25, 27-30

engineering, 7

overview of, 1-2

roles of architects, 5-6

types of architects, 3-4

caching, 203-205

clients, configuring, 187-189

composite, 154

events, 129

HelloWorld, middle tier layer examples, 101-103

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

management, 243

avoiding common process malpractices, 249

documenting libraries, 245-246

enforcing architecture adherence, 244

maintaining discipline, 245

organizational processes, 246-249

technology solutions, 251

WSRR, 251-253

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

persistence, 65

as portlets, 154-156

sample JSFs, 131-144

security, 13, 219, 225

adding filters to login processes, 236-237

architecture, 237-241

authentication, 225-236

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

software engineering

accessing loggers, 43-44

classes, 37-41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

logging, 42-43

method-level timers, 47-48

methods, 38

naming standards, 36

overview of, 34-35

packages, 37

standards documentation, 36

System.out messages, 43

tracing, 42-43

variables, 38

testing, 93-94

WAS, 9. See also WAS

Web, comparing to portals, 153-154

applying

external libraries, 54-55

logging, 49

aspect-oriented programming, 51

exception/error handling, 51-53

standards, 50

tracing, 49

aspect-oriented programming, 51

exception/error handling, 51-53

architects

communication with, 6

overview of, 2-3

roles, 5-6

security, 221

types, 3-4

architecture

adherence, enforcing, 244

applications

architects, 2-3

building blocks, 16-25, 27-30

engineering, 7

overview of, 1-2

types of architects, 3-6

colors in, 30

iBATIS frameworks, 70

JSFs, 133-141, 144

performance, 198

portals, incorporating, 150-151

reference, 10

SCA, 178

security, 237

authorization, 239-241

LTPA, 238

SOA, 29

business functions, services as, 177-178

commitments, 178-179

implementing, 177

managing service data elements, 178

overview of, 175-176

service modeling, 177

WebSphere

base containers, 12

extensions, 14

functionality, 15

overview of, 8-9

specifications, 13

WAS (WebSphere Application Server), 9-12

aspect-oriented programming, 51

Atomicity, Consistency, Isolation, and Durability. See ACID tests

attacks

security. See security

SQL injection, protection against, 224-225

authentication, 225, 227

aliases. creating, 269-271

j_security_check, 227-228

resources, 229-234, 236

WebSphere Application Servers, 153

authorization, 239-241

avoiding common process malpractices, 249

B

B2E (Business-to-Employee) portals, 152

base containers, 12

BIRT (Business Intelligence and Reporting Tools), 259-260

BizLayerDAO class, 104

bookmarks

adding, 165

paging through, 169

BPM (Business Process Management), 179

building blocks of application architecture, 16-17

deployment patterns, 24-27

layers, 18-21

modules, 27-30

tiers, 22-23

business application services, 9

business functions, services as, 177-178

Business Intelligence and Reporting Tools (BIRT), 259-260

business layers

accessing, 103-105

logic, 16

testing, 116-117

business logic, 99-100

business processes

integration, 151

layers, 122

portals, 152

Business Process Management (BPM), 179

Business-to-Employee (B2E) portals, 152

C

CacheMonitor.ear, 216

caching, 199

design options, 200-201

dMaps, 206

creating, 206, 208

testing, 209-214

HTML fragment, 214-216

ESI plug-in, 217

monitoring, 216-217

sizing, 200-201

user sessions, 202-203

WebSphere Application Servers, 203-205

Capability Maturity Model Integration. See CMMI

Carnegie Mellon University, 246

CCB (Change Control Board), 255-256

checked exceptions, 51

classes, 37

BizLayerDAO, 104

CustomerDAOImpl, 76

CustomerDAOImpl.java, 76

GenericPortlet, 161

header information, 40

loggers, accessing, 43-44

methods, 41

Orderdetails, 87

OrdersManager, 89

SqlMapClientDaoSupport, 76

Classic Models database

configuring, 259-260

DB2

creating, 262-263

creating WebSphere data sources, 266-273

loading data, 264-265

environments, configuring, 261

libraries, 116

schemas, 260

ClassicModelsSessionEJB, 92

ClassicModelsSessionEJBClient, 92

ClassicModelsWeb project, 92

clients

applications, configuring, 187, 189

remote, 94-97

REST, 191, 193-194

CMMI (Capability Maturity Model Integration), 246-247

code. See also programming

business logic, placement of, 99-100

completion, 59-62

conventions and standards, 35

examples, running, 277-280

HelloWorld middle tier layer examples, 101-103

Java, 62

reviews, 60

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

security, 219, 225

adding filters to login processes, 236-237

architecture, 237-241

authentication, 225-236

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

collaboration, 151

colors, 30

com.ibmpress.biz.profile, 135

com.ibmpress.entity, 135

com.ibmpress.jsf.pagecode, 135

com.ibmpress.web, 135

comments, 39

inline, 41-42

commitments, 178-179

common process malpractices, avoiding, 249

communication

with architects, 6

with wikis, 62-63

completion, coding, 59-62

components

completion, 35

HTML fragment caching, 214-216

ESI plug-in, 217

monitoring, 216-217

lifecycles, 250

properties, Edit, 145

composite applications, 154

configuration

authentication, aliases, 269-271

client applications, 187-189

conventions and standards, 33-34

databases, 259-260

creating WebSphere data sources, 266-273

DB2, 262-265

environment, 261

schemas, 260

dMaps, 206-208

testing, 209-214

domains, 72-74

files, 53-55, 70

iBATIS frameworks, 74-75

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

Java Portlet APIs, 160-161

JDBC providers, 266, 269

logging, 49

aspect-oriented programming, 51

exception/error handling, 51-53

standards, 50

middle tier layers, 99

accessing business layers, 103-105

business logic, 99-100

HelloWorld examples, 101-103

testing, 105, 107

pages, profiles, 135-138

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

shared libraries, 107-108

business process layers, 122

controlling, 117-118

implementing, 120-121

mapping, 114-116

testing, 116-117

viewing, 110-112

tracing, 49

aspect-oriented programming, 51

exception/error handling, 51-53

connections, testing, 275

constants, 38

containers, base, 12

content

aggregation, 151

delivery, 153

personalization, 154

controlling

Page Controllers, 127

shared libraries, 117-118

conventions, 33-34

coding, 35

naming, 36

conversion, errors, 144-146

Create, Read, Update, Delete (CRUD) functionality, 88

createNamedQuery method, 90

createOrders( ) method, 89

credit limit services, 182-194

CRUD (Create, Read, Update, Delete) functionality, 88

Custom mode, 159

Customer class, 72-74

customer SQL mapping, 72-74

Customer.java file, 72

CustomerDAOImpl class, 76

CustomerDAOImpl.java class, 76

customerIdChanged( ) method, 137

customerIdValidation( ) method, 137

customization

architecture

architects, 2-3

building blocks of, 16-25, 27-30

engineering, 7

overview of, 1-2

roles of architects, 5-6

types of architects, 3-4

caching, 203-205

clients, configuring, 187-189

composite, 154

events, 129

HelloWorld, middle tier layer examples, 101-103

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

Java Portlet APIs, 160-161

management, 243

avoiding common process malpractices, 249

documenting libraries, 245-246

enforcing architecture adherence, 244

maintaining discipline, 245

organizational processes, 246-249

technology solutions, 251

WSRR, 251-253

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

persistence, 65

as portlets, 154-156

sample JSFs, 131-144

security, 13, 219, 225

adding filters to login processes, 236-237

architecture, 237-241

authentication, 225-236

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

shared libraries, 120-121

software engineering

accessing loggers, 43-44

classes, 37-41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

logging, 42-43

method-level timers, 47-48

methods, 38

naming standards, 36

overview of, 34-35

packages, 37

standards documentation, 36

System.out messages, 43

tracing, 42-43

variables, 38

testing, 93-94

D

data access layers, 16

data elements, managing service, 178

data sources, resource references, 67-68

data storage, 65

databases

configuring, 259-260

DB2

configuring, 262-263

loading data, 264-265

WebSphere data sources, creating, 266-273

environments, 261

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

parameters, 274

schemas, 260

DB2 databases

configuring, 262-263

loading data, 264-265

WebSphere data sources, creating, 266-273

DB2 Admin_Customer_SqlMap.xml file, 72

debugging lifecycle phase listeners, 130-131

defining modules, 28

deleteOrders method, 90

delivery, content, 153

dependency of services, 180

deployment, 94-97

patterns, 24-27

WAR files, 24

development

conventions and standards, 33-34

environments, 35

lead, 4

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

standardization, 35

testing, 57

disk resident caches, 201

distributed maps (dMaps), 206

creating, 206-208

testing, 209-214

distribution of services, 179

dMaps (distributed maps), 206

creating, 206-208

testing, 209-212, 214

documents

inline comments, 41-42

internal, 39

libraries, 245-246. See alsolibraries

specialized, 35

standards, 36

doEdit( ) method, 163

doGet( ) method, 81

domains

configuring, 72-74

rich domain models, 100

doView( ) method, 162

dynamic caching, 203-205

HTML fragment caching, 214

Dynamic Caching Service, 14

dynamic WSDL generation, 184

E

EAR (enterprise application) files, 103

Eclipse Extension Framework, 14

Edge Side Includes. See ESI plug-in caches

Edit component properties, 145

Edit mode, 159

EJB (Enterprise Java Bean), 10

EJB 3, 83-97

elements, managing service data, 178

employees

B2E portals, 152

on demand portals, 151

enforcing architecture adherence, 244

engineering

classes, 37

header information, 40

methods, 41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

loggers, accessing, 43-44

logging, 42-43

method-level timers, 47-48

methods, 38

overview of, 34-35

packages, 37

standards

documentation, 36

naming, 36

System.out messages, 43

tracing, 42-43

variables, 38

engineering, application architecture and, 7

enterprise application (EAR) files, 103

enterprise architects, 4

Enterprise Java Bean (EJB), 10

Enterprise Service Bus, 177

Entity Managers, 88-94

environments

configuring, 261

development, 35

errors

conversion, 144, 146

handling, 51-53

JSFs, 130

masking, 144, 146

validation, 142

ESI (Edge Side Includes) plug-in caches, 217

events, applications, 129

exceptions, handling, 51-53

expert location, 151

expiration policies, 200

Extended Deployment (XD), 201

extensions, WebSphere, 14

external libraries, applying, 54-55

Extensible Markup Language. See XML

F

Faces Context, 129, 136

features

of base containers, 12

of SOA, 176

files

applicationContext.xml, 78

configuring, 53-55

Customer.java, 72

DB2Admin_Customer_SqlMap.xml, 72

documents. See documents

EAR, 103

ibm-web-bnd.xmi, 68

persistence.xml, 88

security-constraint sections, 232

sharing, 151

SqlMap.xml, 70, 72

SqlMapConfig.xml, 70, 74

WAR, deployment of, 24

web.xml, 68

forms-based portals, 152

Fowler, Martin, 127

fragments, HTML caching, 214-216

ESI plug-in, 217

monitoring, 216-217

frameworks

iBATIS, 68-71

configuring, 74-75

domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

JWL, 147

persistence, 65-67

O/R mapping, 66

SQL-based, 66

portals, 149

applications as, 154-156

B2E, 152

business processes, 152

comparing to Web applications, 153-154

example of, 161-172

incorporating into architecture, 150-151

Java Portlet API, 156-161

virtual technology, 151-152

presentation

JSFs, 127-130

lifecycle phase listeners, 130-131

sample applications, 131-144

selecting, 125-126

standards, 146

troubleshooting, 144-146

SOA, 151

functionality, 151

CRUD, 88

virtual portal technology, 151-152

WebSphere, 15

functions, 38

getters and setters, 41

testing, 57

G

GenericPortlet class, 161

GET method, 233

getBean( ) method, 80

getEntityManager( ) method, 89

getters, 41

governance, 243

commitments, 178-179

Web services, 180

groups, 229

H

handling errors/exceptions, 51-53

headers, classes, 40

HelloWorld middle tier layer examples, 101-103

Help mode, 159

HTML (Hypertext Transfer Markup Language), 214-216

ESI plug-in, 217

monitoring, 216-217

HTTP (Hypertext Transfer Protocol) caching, 205

I

iBATIS frameworks, 68, 71

configuring, 74-75

domains, configuring, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

IbatisSpringDAOTestServlet, 80

ibm-web-bnd.xmi file, 68

identifying modules, 27-30

implementation

lifecycle phase listeners, 130-131

shared libraries, 120-121

SOA, 177

business functions, services as, 177-178

commitments, 178-179

managing service data elements, 178

service modeling, 177

importance of security, 219-220

information and application integration, 9

Information Technology Infrastructure Library (ITIL), 247-249

init( ) method, 80

injection, SQL, 222-225

inline comments, 41-42

Integrated Solutions Console, 206

integration

information and application, 9

reference architecture, 9

services, 189

testing, 57

interaction

clients, REST, 191-194

layers, 141

services, 9

interfaces, 37

applications, testing, 93-94

Java

Logging API, 45-47

Persistence, 83-94

Portlet API, 156-161

JAX-WS, 181-182

internal documentation, 39

interoperability

on-the-fly, 177

WS-I, 180

isUserInRole( ) method, 236

iterative project methodology, 254

ITIL (Information Technology Infrastructure Library), 247-249

J

J2EE Connector Architecture (JCA), 12

Java, 5

code reviews, 62

naming standards and conventions, 36

Persistence APIs, 83-97

Java API for XML Web Services. See JAX-WS

Java Architecture for XML Binding (JAXB2.0), 181

Java Messaging Service (JMS), 12

Java Naming and Directory (JNDI) services, 13

Java Portlet APIs, 156-160

preferences, 160-161

Java Programming Query Language (JPQL), 85

Java Server Pages (JSPs), 12

HTML fragment caching, 214-216

monitoring, 216-217

naming, 38

packages, 37

Java Virtual Machine (JVM), 22

JavaServer Faces (JSFs), 125-130

lifecycles, phase listeners, 130-131

sample applications, 131-144

standards, 146

troubleshooting, 144-146

JAX-WS (Java API for XML Web Services), 181-182

JAX-WS 2.0 (Java API for XML Web Services), 181

JAXB 2.0 (Java Architecture for XML Binding), 181

JCA (J2EE Connector Architecture), 12

JDBC (Java Database Connectors), 266-269

JMS (Java Messaging Service), 12

JNDI (Java Naming and Directory) services, 13

Johnson, Rod, 76

JPQL (Java Programming Query Language), 85

JSFs (JavaServer Faces), 125-130

Lifecycles, phase listeners, 130-131

sample applications, 131-144

standards, 146

troubleshooting, 144-146

JSPs (Java Server Pages), 12

HTML fragment caching, 214-216

monitoring, 216-217

naming, 38

packages, 37

JVM (Java Virtual Machine), 22

JWL framework, 147

j_security_check, 227-228

K–L

keys

cache generation, 200

information, 151

Kruchten, Phillippe, 30

latest craze project methodology, 254

layers

application architecture, 16

business

processes, 122

testing, 116-117

deployment patterns, 24-27

interaction, 141

middle tier

accessing, 103-105

business logic, 99-100

configuring, 99

HelloWorld examples, 101-103

testing, 105-107

modules, comparing to, 27-30

overview of, 18-21

Persistence, 65

portals, 155

presentation

JSFs, 127-130

lifecycle phase listeners, 130-131

sample applications, 131-144

selecting, 125-126

standards, 146

troubleshooting, 144-146

tiers, comparing to, 22-23

layouts, portlets, 172

levels of development testing, 57

libraries

documenting, 245-246

external, applying, 54-55

ITIL, 247-249

shared

business process layers, 122

configuring, 107-108

controlling, 117-118

implementing, 120-121

mapping, 114-116

testing, 116-117

viewing, 110-112

lifecycles

components, 250

JSFs, 128-130

phase listeners, 130-131

portlets, 157

WSRR, 252

Lightweight Third Party Authentication (LTPA), 238

load, 199

loading

Classic Models data, 264-265

policies, 200

local deployment, 94-97

local service layer (LSL), 21

loggers, accessing, 43-44

logging, 42-43

applying, 49

aspect-oriented programming, 51

exception/error handling, 51-53

Java Logging API, 45-47

standards, 50

trace-level, 47-48

login filters, adding, 236-237

LSL (local service layer), 21

LTPA (Lightweight Third Party Authentication), 238

M

main( ) method, 58

malpractices, avoiding common process, 249

management

applications, 243

avoiding common process malpractices, 249

documenting libraries, 245-246

enforcing architecture adherence, 244

maintaining discipline, 245

organizational processes, 246-249

technology solutions, 251

WSRR, 251-253

BPM, 179

commitments, 178-179

Entity Managers, 88-92

POJOs, 105

services, data elements, 178

shared libraries, 117-118

Web services, 180

mapping

customer SQL, 72-74

dMaps, 206

creating, 206-208

testing, 209-214

iBATIS frameworks, 69

O/R components, 65-66

products, 10

roles, 229

shared libraries, 114-116

masking errors, 144-146

memory resident caches, 201

Message Queue, 177

Message Transmission Optimization Mechanism (MTOM), 181

messages, System.out, 43

metadata, persistence, 88

methodologies, projects, 253-254

CCB, 255-256

troubleshooting, 254-255

methods, 38

classes, 41

createNamedQuery, 90

createOrders( ), 89

customerIdChanged( ), 137

customerIdValidation( ), 137

deleteOrders, 90

doEdit( ), 163

doGet( ), 81

doView( ), 162

GET, 233

getBean( ), 80

getEntityManager( ), 89

init( ), 80

isUserInRole( ), 236

main( ), 58

method-level timers, 47-48

POST, 233

processAction( ), 166

store( ), 167

Michelson, Brenda, 176

middle tier layers

accessing, 103-105

business logic, 99-100

configuring, 99

HelloWorld examples, 101-103

testing, 105-107

models, 100

JSF navigation, 132-133

services, 177

values, updating, 129

modes, switching, 168-172

modules, 27-30

monitoring

ESI cache plug-ins, 217

HTML fragment caches, 216-217

MTOM (Message Transmission Optimization Mechanism), 181

N–O

naming

JSPs, 38

packages, 37

standards, 36

navigation

JSFs, 132-133

role-based, 153

O/R (Object/Relational) mapping components, 65-66

objects

caching, 206

PortletPreferences, 167

Office of Government Commerce in the United Kingdom, 247

on demand portals, 151

on-the-fly interoperability, 177

Open Group, 175

options

architecture

architects, 2-3

building blocks of, 16-30

engineering, 7

overview of, 1-2

roles of architects, 5-6

types of architects, 3-4

caching, 201-205

clients, configuring, 187-189

composite, 154

events, 129

HelloWorld, middle tier layer examples, 101-103

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

management, 243

avoiding common process malpractices, 249

documenting libraries, 245-246

enforcing architecture adherence, 244

maintaining discipline, 245

organizational processes, 246-249

technology solutions, 251

WSRR, 251-253

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

persistence, 65

as portlets, 154-156

sample JSFs, 131-144

shared libraries, 120-121

security, 13, 219, 225

adding filters to login processes, 236-237

architecture, 237-241

authentication, 225-236

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

software engineering

accessing loggers, 43-44

classes, 37-41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

logging, 42-43

method-level timers, 47-48

methods, 38

naming standards, 36

overview of, 34-35

packages, 37

standards documentation, 36

System.out messages, 43

tracing, 42-43

variables, 38

testing, 93-94

WAS, 9. See also WAS

Web, comparing to portals, 153-154

Orderdetails class, 87

OrdersManager, 88

OrdersManager class, 89

OrdersTestServlet, 93

OrderWebServlet, 239

organizational processes, managing, 246-249

P

packages, 37

analysis, 244

files, configuring, 53-55

structure, 107

Page Controllers, 127

page profiles

creating, 135-138

reviewing, 139-144

paging through bookmarks, 169

parameters

databases, 274

PREF_REMOVE, 165

patterns

deployment, 24-27

SOA

business functions, services as, 177-178

commitments, 178-179

implementing, 177

managing service data elements, 178

service modeling, 177

Patterns of Enterprise Application Architecture, 127

performance, 197-198

architecture, 198

caching, 199

design options, 200-201

user sessions, 202-203

terminology, 199

testing, 57

Web services, 179

Performance Analysis for Java Web Sites, 199

persistence

data source resource references, 67-68

EJB 3, 83-97

frameworks, 65-67

O/R mapping, 66

SQL-based, 66

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

Persistence layer, 65

persistence.xml file, 88

personalization of content, 151, 154

phase listeners, lifecycle, 130-131

placement of business logic, 99-100

Plain Old Java Object. See POJO

plug-ins

caching, 205

ESI caching, 217

POJO (Plain Old Java Object), 72, 84-88, 105

policies

expiration, 200

loading, 200

PortalPatterns.org, 62-63

portals

forms-based, 152

frameworks, 149

applications as, 154-156

B2E, 152

business processes, 152

comparing to Web applications, 153-154

example of, 161-172

incorporating into architecture, 150-151

Java Portlet API, 156-161

virtual technology, 151-152

portlet.xml deployment descriptor, 171

PortletPreferences object, 167

PortletRequestDispatcher, 162

portlets

aggregation, 154

lifecycles, 157

POST method, 233

preferences

architecture

architects, 2-3

building blocks of, 16-30

engineering, 7

overview of, 1-2

roles of architects, 5-6

types of architects, 3-4

bookmarks, adding, 165

caching, 203-205

clients, configuring, 187-189

composite, 154

events, 129

HelloWorld, middle tier layer examples, 101-103

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

Java Portlet APIs, 160-161

management, 243

avoiding common process malpractices, 249

documenting libraries, 245-246

enforcing architecture adherence, 244

maintaining discipline, 245

organizational processes, 246-249

technology solutions, 251

WSRR, 251-253

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

persistence, 65

as portlets, 154-156

sample JSFs, 131-144

security, 13, 219, 225

adding filters to login processes, 236-237

architecture, 237-241

authentication, 225-236

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

shared libraries, 120-121

software engineering

accessing loggers, 43-44

classes, 37-41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

logging, 42-43

method-level timers, 47-48

methods, 38

naming standards, 36

overview of, 34-35

packages, 37

standards documentation, 36

System.out messages, 43

tracing, 42-43

variables, 38

PREF_REMOVE parameter, 165

presentation

frameworks

JSFs, 127-130

lifecycle phase listeners, 130-131

sample applications, 131-144

selecting, 125-126

standards, 146

troubleshooting, 144-146

layers, 16-21

processAction( ) method, 166

processes

BPM, 179

login, adding filters, 236-237

malpractices, avoiding common, 249

organizational, managing, 246-249

requirements, 59-62

review, 35

services, 9

validation, 129

products, mapping, 10

profiles

pages

creating, 135-138

reviewing, 139-144

saving, 143

programming

architecture

architects, 2-3

building blocks of, 16-30

engineering, 7

overview of, 1-2

roles of architects, 5-6

types of architects, 3-4

aspect-oriented, 51

bookmarks, adding, 165

caching, 203-205

clients, configuring, 187-189

composite, 154

events, 129

HelloWorld, middle tier layer examples, 101-103

iBATIS frameworks, 68-71

configuring, 74-75

configuring domains, 72-74

Spring DAO framework, adding, 76-80

testing, 80-81

transactions, 82

Java Portlet APIs, 160-161

management, 243

avoiding common process malpractices, 249

documenting libraries, 245-246

enforcing architecture adherence, 244

maintaining discipline, 245

organizational processes, 246-249

technology solutions, 251

WSRR, 251-253

modes, switching, 168-172

performance, 197-198

architecture, 198

caching, 199-203

terminology, 199

persistence, 65

as portlets, 154-156

sample JSFs, 131-144

security, 13, 219, 225

adding filters to login processes, 236-237

architecture, 237-241

authentication, 225-236

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

shared libraries, 120-121

software engineering

accessing loggers, 43-44

classes, 37-41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

logging, 42-43

method-level timers, 47-48

methods, 38

naming standards, 36

overview of, 34-35

packages, 37

standards documentation, 36

System.out messages, 43

tracing, 42-43

variables, 38

Programming Portlets Second Edition, 78

projects

files, configuring, 53-55

malpractices, avoiding, 250

methodologies, 253-254

CCB, 255-256

troubleshooting, 254-255

properties, Edit components, 145

protection against SQL injection attacks, 224. See also security

providers, JDBC, 266, 269

Q–R

RAD (Rational Application Developer), 161, 181-184

references

architecture, 10

resources, 67-68

shared libraries, 116

remote clients, 94-97

remote deployment, 94-97

Representational State Transfer (REST), 189-194

requests

CCB, 255-256

values, 129

requirements. See also conventions; standards

code completion, 59-62

review processes, 59-62

unit testing, 55-59

resources

references, 67-68

security, 229-236

response time, 199

REST (Representational State Transfer), 189-194

Restore view, 129

review processes, 35

code, 60

Java, 62

page profiles, 139-144

requirements, 59-62

rich domain models, 100

risks, 219. See also security

roles, 229

access, 151

of architects, 5-6

mapping, 229

navigation, 153

of security architects, 221

running code examples, 277-280

S

SAAJ 1.3 (SOAP with Attachments API for Java), 181

sample applications, JSFs, 131-144

sample portlets, 161-172

saving profiles, 143

SCA (Service Component Architecture), 178

schemas, databases, 260

SDOs (Service Data Objects), 178

security, 219, 225

applications, 13

architecture, 237

authorization, 239-241

LTPA, 238

authentication, 225, 227

j_security_check, 227-228

resources, 229-236

filters, adding to login processes, 236-237

importance of, 219-220

role of security architects, 221

SQL injection, 222-225

WebSphere Application Servers, 153

security-constraint sections, 232

SEI (Software Engineering Institute), 246

selection of presentation frameworks, 125-126

servers

caching, 203-205

HTTP, 205

WAS, 9. See also WAS

Service Component Architecture (SCA), 178

Service Data Objects (SDOs), 178

Service Oriented Architecture. See SOA

services

as business functions, 177-178

data elements, managing, 178

integration, 189

modeling, 177

REST, 189-194

testing, 184-187

types of, 178

Web, 179

credit limit services, 182-194

JAX-WS, 181-182

management, 180

performance, 179

standardization, 180

WebSphere, 9

servlets

HTML fragment caching, 214-216

ESI plug-in, 217

monitoring, 216-217

testing, 94

Session Initiation Protocol (SIP), 12

sessions, caching, 202-203

setters, 41

setup, 35

shared libraries, 54

business process layers, 122

configuring, 107-108

controlling, 117-118

implementing, 120-121

mapping, 114-116

testing, 116-117

viewing, 110-112

files, 151

single sign-on, LTPA, 238

SIP (Session Initiation Protocol), 12

sizing caches, 200-201

SOA (Service Oriented Architecture), 29, 151

implementing, 177

business functions, services as, 177-178

commitments, 178-179

managing service data elements, 178

service modeling, 177

overview of, 175-176

SOAP with Attachments API for Java (SAAJ 1.3), 181

software architects, 4. See also architects

software engineering

classes, 37

header information, 40

methods, 41

constants, 38

functions, 38

getters and setters, 41

inline comments, 41-42

interfaces, 37

internal documentation, 39

Java Logging API, 45-47

JSPs, 38

loggers, accessing, 43-44

logging, 42-43

method-level timers, 47-48

methods, 38

overview of, 34-35

packages, 37

standards

documentation, 36

naming, 36

System.out messages, 43

tracing, 42-43

variables, 38

Software Engineering Institute (SEI), 246

solution architects, 4

specialized architects, 4

specialized documents, 35

specifications, WebSphere, 13

Spring DAO framework, adding, 76-80

SQL (Structured Query Language)

customer mapping, 72-74

injection, 222-225

persistence frameworks, 66

SqlMap.xml file, 70, 72

SqlMapClientDaoSupport class, 76

SqlMapConfig.xml file, 70, 74

staleness of cached data, 200

standards, 33-34

coding, 35

documentation, 36

JSF as, 146

logging, 50

naming, 36

Web services, 180

stone idol project methodology, 254

storage, 65

getters and setters, 41

store( ) method, 167

structures

files, configuring, 53-55

packages, 107

Struts, 146

switching modes, 168-172

System.out messages, 43

T

team spaces, 151

technology solutions, 251

terminology, performance, 199

testing

ACID, 82

business layers, 116-117

data sources, 275

dMaps, 209-214

iBatis frameworks, 80-81

middle tier layers, 105-107

services, 184-187

servlets, 94

unit requirements, 55-59

Web, troubleshooting, 58

throughput, 199

tiers, overview of, 22-23

timers, method-level, 47-48

trace-level logging, 47-48

tracing, 42-43

applying, 49

aspect-oriented programming, 51

exception/error handling, 51-53

transactions, iBatis frameworks, 82

troubleshooting

JSFs, 130, 144-146

project methodologies, 254-255

validation, 142

Web testing, 58

types

of architects, 3-4

of caches, 201

of modules, 28

of persistence frameworks, 65-67

O/R mapping, 66

SQL-based, 66

of services, 178

U

unchecked exceptions, 51

unit testing, 105-107

requirements, 55-59

updates, model values, 129

user acceptance testing, 57

users

authentication, 225-227

j_security_check, 227-228

resources, 229-236

sessions, caching, 202-203

virtual portal technology, 151-152

V

validation

errors, 142

processes, 129

values

models, updating, 129

requests, 129

variables, 38

vendor-defined methodologies, 254

View mode, 159

viewing shared libraries, 110-112

views, Restore, 129

virtual portal technology, 151-152

W–Z

WAR files, deployment of, 24

WAS (WebSphere Application Server), 9-12

Scheduler, 14

Web Server Plug-ins, 205

waterfall project methodology, 254

Web application portals, comparing, 153-154

Web Service Interoperability (WS-I), 180

Web services, 179

credit limit services, 182-194

JAX-WS, 181-182

management, 180

performance, 179

standardization, 180

Web Services Addressing (WS-Addressing), 181

Web Services Reliable Messaging (WS-RM), 181

Web testing, troubleshooting, 58

web.xml files, 68

WebSphere

base containers, 12

data sources, creating, 266-273

extensions, 14

functionality, 15

overview of, 8-9

specifications, 13

WebSphere Application Server. See WAS

WebSphere Business Integration Primer: Process Server, BPEL, SCA, and SOA, 123

WebSphere Service Registry and Repository. See WSRR

wikis, communication with, 62-63

WS-Addressing (Web Services Addressing), 181

WS-I (Web Service Interoperability), 180

WS-RM (Web Services Reliable Messaging), 181

WSRR (WebSphere Service Registry and Repository), 251-253

XD (Extended Deployment), 201

XML (Extensible Markup Language), JAX-WS, 181-182

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.225.10.116