|
|
J2EE (Java 2.0 Platform Enterprise Edition)
class loading in J2EE, 585
design issues, 675
distributed architecture, 676
general principles, 676
helper classes, 679
JDBC, 677
maintainability, 675
MVC pattern, 679
OO design principles, 678
performance, 675, 678
portability, 677
productivity, 676
scalability. 678
simplicity 675
SLSB (stateless session beans), 678
determining version specification, 44
EJB concerns, 21, 676
project guidelines, 679
testing projects, 679
J2EE Connector Architecture Resource Adapters
see JCA Resource Adapters.
J2EE Reference Implementation server
choosing application server, 47
JAAS (Java Authentication and Authorization API), 237
web sites, 237
Jakarta TagLibs, 535
Jakarta Velocity
see Velocity
JAR files
EJB JAR files, 584
packaging sample applications, 592
Java 1.3 extension mechanism
class loading in J2EE, 588
Servlet 2.3 specification, 589
Java 1.4 assertion mechanism
web site, 108
Java Authentication and Authorization API
see JAAS.
Java coding conventions
see coding standards.
Java language binding, XSLT, 700
Java logging APIs, 162-65
Java Pet Store
integrating web application into overall architecture,
466
Java reflection API
see reflection.
Java Transaction Service
see JTS.
Java web development, 443
history of web development, 443
JSP pages, 444
Physical Resource Mapping Strategy, 444
servlets, 443
using JSP with servlets, 446
Front Controller pattern, 447
Java.beans.beancontext package
infrastructure, support packages for, 402
java.lo package
Externalizable interface, 661
Serializable interface, 653
java.lang package
Class class, 585, 642
ClassLoader class, 586
Runnable interface, 620
java.lang.reflect package
Method class, 642
java.rmi package
Remote interface, 653
RemoteException class, 30, 387, 653
Java.sql package
CallableStatement interface, 347
Connection interface 340
Date class, 359
PreparedStatement interface, 323
SQLException class, 320, 327
SQLWarning class, 323
Statement interface, 323
Timestamp class, 359
Java.text package
NumberFormat class, 540, 694
SimpleDateFormat class, 539, 694
Java.util package
Date class, 659
HashMap class, 651
HashTable class, 646
Thread class, 590
JavaBean properties
exposing using controller objects, 482
writing effective tests, 86
JavaBeans
adapter beans, 526
bean manipulation, 397
limitations, core JavaBeans API, 397
converting to XML, 241
data binding in MVC frameworks, 493
flexibility, 138
infrastructure framework using, 397
BeanWrapper example, 399
BeanWrapper interface, methods, 398
com.interface21.beans package, 398
PropertyEditorSupport/~ Manager,
implementing/registering property editors, 400
model objects, 525
OO design principles, 138
summarized, 174
using JavaBeans in JSP pages, 531
Javadoc
documentation, 159
test cases, 90
Javax.jdo package
PersistenceCapable interface, 317
PersistenceManager interface, 317
PersistenceManagerFactory interface, 317
Query interface, 318
Javax.jms package
MessageListener interface, 230, 415
Javax.servlet package
ServletContext interface, 698
Javax.servlet.http package
HttpServlet class, 668
HttpServletRequest interface, 493
HttpServletResponse interface, 668
HttpSession interface, 488
web caching using HTTP, 668
Javax.sql package
DataSource interface, 87, 340, 597
javax.xml.transform package
Source interface, 698
Templates interface, 697
Transformer class, 697
TransformerFactory class, 697
JAXB (Java Architecture for XML Binding), 244
JBoss deployment descriptors
deploying sample application, 605
JBoss server
choosing application server, 47, 53
deploying sample application, 601, 607
creating connection pools, 602
creating JMS destinations, 603
JBoss deployment descriptors, 605
viewing configuration, 604
directory structure, 601
conf sub-directory, 601
deploy sub-directory, 601
lib sub-directory, 601
log sub-directory, 601
integrating JProbe with application server, 625
sample application and, 199
service definition files, 601
JCA Resource Adapters
EAR deployment, 584
JDBC (Java DataBase Connectivity)
compared to SQLJ, 313
data access technologies, 26
description, 312
exception handling, 320
ApplicationException class, 321
problems with, 327
SQLException class, 320, 322, 327
SQLWarming class, 323
J2EE design, 677
managing persistence using JDBC, 313
PreparedStatement interface, 323
problems with API, 325
rules for using, 313
sample application data access, 319
calling stored procedures using JDBC, 357
implementing queries using JDBC, 355
implementing updates using JDBC, 356
SQL-based database access, 312, 677
Statement interface, 323
JDBC abstraction framework, 324
aims and objectives, 326
AvailabilityQuery class, 326
com.interface21.dao package, 329
com.interface21.jdbc.core package, 329, 333
DataSourceUtils class, 336
JdbcTemplate class, 334, 336, 340
PreparedStatementCreator interface, 335
PreparedStatementCreatorFactory class, 335
ResultReader interface, 336
RowCallbackHandler interface, 335
RowCountCallbackHandler class, 336
SQLExceptionTranslater interface, 336
com.interface21.jdbc.object package, 333, 342
calling stored procedures, 350
ManualExtractionSqlQuery class, 345
performing queries, 348
performing updates, 350
RdbmsOperation class, 343
SqlFunction class, 346
SqlOperation class, 344
SqlQuery class, 344
SqlUpdate class, 347
StoredProcedure class, 347
DAO (Data Access Object) pattern, 328
exception handling, 327, 334
DataAccessException class, 328
JDBC specific exceptions, 329, 331
inversion of control, 334
reasons for using, 325
reflection and, 346
sample application, 324
Strategy design pattern, 334
JDBC helper classes
testing, 99
JDBC RowSets
disconnected data access, 267
JDBC specific exceptions
converting JDBC exceptions to generic exceptions,
331
OracleSQLExceptionTranslater class, 332
SQLStateSQLExceptionTranslater class, 332
JDBC abstraction framework, 329
JdbcTemplate class, 334
DataSource interface and, 340
getDataSource() method, 337
getlgnoreWarnings() method, 337
implementing, 336
performing queries, 341
performing updates, 341
query() method, 337, 338
setExceptionTranslater() method, 337
setlgnoreWarnings() method, 337
throwExceptionOnWarningIfNotlgnoringWarnings()
method, 338
UML class diagram, 334
update() method, 339, 341
using, 340
JDO (Java Data Objects)
byte code enhancer, 317
caching for performance, 246, 317
compared to com.interface21.jdbc.object package,
342
compared to entity beans, 317
data access technologies, 25
description, 317
entity beans, 308
JDOQL query language, 318
O/R mapping technologies, 315, 317
persistence manager, 317
Query interface, 318
references to web sites, 319
TopLink and, 316
JDOQL query language, 318
filters, 318
queries, 318
Query interface, 318
Jetty HTML generation library, 562
JMeter
see Apache JMeter.
JMS (Java Message Service)
accessing EJBs using, 425
custom bean definition, 427
DataUpdateJmsListener class, 427
JmsTemplate class, 426
publish() method, pub/sub messaging, 426
subscrbeToTopicNonDurable() method, 427
PubSubMessageCreator inner interface, 426
alternatives, 234
asynchronous calling, 227-35
JTS compared, 229
messaging, 227-35
performance, 233
propagating data updates, 435
sample application, 234
JMS destinations, creating
deploying applications, 597
deploying sample application, 603
JMX MBeans, 603
JMX MBeans
creating connection pools, 602
creating JMS destinations, 603
JBoss service definition files, 602
installing service definition files, 604
singletons, 222
JNDI (Java Naming and Directory Interface), 141
JProbe profiler, 625
integrating JProbe with application server, 625
configuring settings, 626
filters, 626
using JProbe with sample application, 627, 644, 651
JProbe Suite
profiling, 625
writing effective tests, 86
JSP fragments, 538
JSP Front strategy
compared to Servlet Front strategy, 454
Front Controller pattern, 454
JSP Model 1 architecture
see Physical Resource Mapping Strategy.
JSP Model 2 architecture
see Front Controller pattern.
JSP pages
alternatives to JSP, 544
compared to template languages, 544
compared to WebMacro, 545
compared to XSLT, 551
custom tags, 446, 532
advantages, 532
disadvantages, 532
data access, 276
data binding, 446
<jsp:setProperty> element, 446
problems with, 446
future prospects, 538
guidelines for using in views, 536
Jakarta TagLibs, 535
Java web development, 444
limitations, 445
Physical Resource Mapping Strategy, 444
problems with, 444
protecting interface code, 131
unit tests, 101
using as templates, 544
using JavaBeans in JSP pages, 531
using JSP with servlets, 446
Front Controller pattern, 447
using XSLT instead of JSP pages, 553
JSP Standard Tag Library
see JSTL.
JSP tag libraries, Struts, 459
Bean tag library, 460
HTML tag library, 460
Logic tag library, 460
nested properties, 460
Template tag library, 460
JSP views, 526
advantages, 526
content page inclusion, 575
custom tags, 533
view helpers, 533
disadvantages, 526
example of bad design, 527
future prospects, 538
guidelines for using, 536
implementing, 688
InternalResourceView class, 691
<jsp:setProperty> element, 528
<jsp:useBean> element, 531
performance, 664
references to web sites, 527
sample application, 538
JSTL, 541
template page inclusion, 576
<jsp:forward> element
avoiding using, 537
<jsp:getProperty> element, 540
<jsp:setProperty> element
JSP data binding, 446
JSP views, 528
<jsp:useBean> element, 541
class attribute, 531
id attribute, 531
JSP views, 531
scope attribute, 531
type attribute, 531
JSTL (JSP Standard Tag Library), 533
<c:forEach> element, 542
<c:if> element, 543
<c:out> element, 542
configuring JSTL, 688
description, 533
Expression Language, 533
syntax, 542
<fmt:formatDate> element, 542
<fmt:formatNumber> element, 543
importance of, 534
sample application view, 541
SQL tag library, 534
using XSLT with JSP custom tags, 554
<x:forEach> element, 554
<x:out> element, 554
XML tag library, 554
JTA (Java Transaction API)
using EJBs, 23
JTS (Java Transaction Service)
JMS compared, 229
JUnit framework, 79-85
inheritance, 87
test case, 102
testing business objects implemented without EJB, 92
web site, 79
writing effective tests, 86
JUnltEE testing tool
web site, 97
JVM
collocating components in JVM, 663
profiling options, 624
|
|