did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780471405931

Developing JavaTM Enterprise Applications, 2nd Edition

by ;
  • ISBN13:

    9780471405931

  • ISBN10:

    0471405930

  • Edition: 2nd
  • Format: Paperback
  • Copyright: 2001-08-01
  • Publisher: Wiley
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $59.99

Summary

The first hands-on guide to building Java enterprise applications, updated and expanded to cover all of J2EE2s exciting new features Java has always been great when it came to creating Web applets, but, until now, it was hardly up to the task of building high-performance applications. Increased XML support, EJB 2.0, and a new APM, Java2 Enterprise Edition (J2EE), offer developers what they need to build powerful enterprise applications. This updated and expanded edition of the popular hands-on guide shows them how. It uses the examples of two large-scale enterprise applications--complete with source code--to show readers how to use J2EE2s various APIs together as well as with other technologies, such as CORBA, COM, Servlets, and Agents. The book also features substantially expanded coverage of Enterprise JavaBeans and tells how to get the most out of EJB 2.0 tools and products. Topics of special interest to Java developers include: building a Servlet search engine; creating online stores with Java Server Pages; using transactions with EJBs and JDBC to create N-Tier applications; and selecting the best middleware for your needs.

Author Biography

STEPHEN ASBURY is a senior engineering manager at Tibco Software, Inc. Developing Java Enterprise Applications, Second Edition is his seventh book. He has worked with several Enterprise Application Integration companies over the years, including Active Software (now WebMethods), Virtria Technology, and Tibco Software, and has been involved with the design and development of numerous Web and enterprise systems.

Table of Contents

Acknowledgments xv
About the Authors xvii
Introduction xix
An Introduction to Java Enterprise Development
1(8)
Supporting Concepts
1(4)
HTTP
1(1)
Java
2(1)
Specialized Servers
3(1)
Basic Enterprise Design
3(1)
Security
4(1)
Enterprise Technologies
5(1)
Creating an Enterprise Application with Java
6(2)
Why Use Java for Enterprise Development?
7(1)
Summary
8(1)
What Is JDBC?
9(8)
Goals for JDBC
10(3)
Support Common Database Standards
11(1)
Keep It Simple
11(2)
JDBC Architecture
13(2)
Typical Scenarios
13(2)
Summary
15(2)
Basic JDBC Programming
17(38)
About the Sample Database
17(2)
JDBC Basics
19(2)
A Simple JDBC Example
21(3)
Connecting to a Data Source
24(6)
Driver Types
26(1)
Connection Example
27(3)
Examining a Data Source
30(3)
Accessing the Database
33(3)
Fetching Data
36(9)
Working with a Result Set
36(5)
Working with ResultSetMetaData
41(4)
Handling Data
45(5)
Prepared Statements
46(1)
Managing Transactions
47(2)
Exception-Handling /SQL Warning
49(1)
Advanced Features
50(2)
Summary
52(3)
What is JNDI?
55(10)
Terminology
55(5)
Naming Service
56(2)
Directory Services
58(2)
Goals for JNDI
60(1)
JNDI Architecture
61(2)
Summary
63(2)
Using JNDI
65(52)
About the Sample Service Provider
66(1)
The Naming Package
67(20)
Access a Context
67(11)
Object Bindings
78(4)
Storing Java Objects as References
82(5)
The Directory Package
87(22)
Search for Objects
88(11)
Configure the Search with SearchControls
99(7)
Modify Attributes
106(3)
Schema
109(1)
Exception Handling
110(4)
Summary
114(3)
What Are Servlets?
117(12)
Server-Side Programming Technologies
118(1)
Processing Forms with CGI
119(3)
Processing Forms with Servlets
122(6)
Creating a Servlet
125(1)
Example Servlet
126(1)
Running the Servlet
127(1)
Summary
128(1)
Programming Servlets
129(78)
A Basic Servlet
130(11)
Handling a Request
132(2)
SingleThreadModel
134(1)
Servlet Request
134(4)
ServletResponse
138(1)
Servlet Config
139(1)
ServletContext
139(2)
GenericServlet
141(1)
Running and Hosting Servlets
141(5)
HTTP Servlets
146(24)
HttpServletRequest
149(6)
HttpServletResponse
155(5)
HttpSession
160(6)
Cookies
166(4)
Multithreaded Servlets
170(11)
Servlets and Applets
174(7)
Listeners
181(1)
Filters
182(2)
Designing Servlets
184(3)
Debugging Servlets
187(10)
Performance Tuning
197(8)
Summary
205(2)
A Servlet-Based Search Engine
207(20)
HTMLSearchServlet
208(13)
Pathinfo and Query Initialization
213(2)
Handling Non-Query Requests
215(1)
Handling Queries
215(6)
IndexManager
221(3)
SearchTester.html
224(2)
Summary
226(1)
What Is Server-Side Scripting?
227(10)
Web-Based Application Structure
227(3)
Server-Side Scripting
228(2)
JavaServer Pages
230(5)
JHTML
230(3)
JavaServer Pages
233(2)
Summary
235(2)
Creating JavaServer Pages
237(52)
How JavaServer Pages Work
237(5)
When to Use JavaServer Pages
241(1)
Three Major Techniques
242(1)
Java in HTML-Scriptlets
242(14)
A Simple Scriptlet
242(2)
Scoping
244(2)
Conditionals and Looping
246(3)
Printing Values
249(1)
Accessing Servlet Information
249(7)
Controlling Page Attributes
256(1)
Accessing Other Resources
257(5)
Including Other JSPs and Web Pages
258(1)
Forwarding the User to Another Web Page
259(1)
Including the Java Plug-in
259(3)
Using JavaBeans to Extend JSPs
262(4)
Custom Tag Libraries
266(15)
Writing a Tag Handler
266(12)
Defining the Tag Library
278(2)
Registering the Tag Library
280(1)
Using the Custom Tags
281(1)
Handling Problems
281(3)
Interrupts
281(2)
Errors
283(1)
Integrating JSPs and Servlets
284(3)
Summary
287(2)
JSP Bug-Tracking Tool
289(32)
Basic Concepts and Design
289(1)
Creating the Database
290(5)
The Index Page
295(1)
The Bug Submission Page
296(9)
Handle the Submission Process
297(8)
The Details Page
305(7)
The Search Page
312(3)
The Search Results Page
315(4)
Testing the Bug-Tracking System
319(1)
Summary
320(1)
Overview of Distributed Objects
321(12)
Distributed Computing
321(2)
Distributed Objects
323(8)
Creating a Solution
325(1)
Current Solutions
326(5)
Summary
331(2)
Introduction to Java RMI
333(36)
What Is RMI?
334(9)
RMI on the Client
335(2)
RMI on the Server
337(1)
RMI on the Server
338(2)
Connecting the Client and Server
340(2)
Creating an RMI Application
342(1)
A Simple Client/Server Application
343(6)
Creating the Remote Interface
343(1)
Implementing the Server
344(2)
Compiling and Installing the Server
346(1)
Implementing the Client
347(2)
Compiling and Running the Client
349(1)
Example with Bidirectional Messaging
349(7)
Implementing MessageReceiver
349(1)
Updating MessageServer
350(1)
Updating the Server
350(3)
Updating the Client
353(3)
Class Loading
356(3)
Garbage Collection
359(2)
RMI and Firewalls
361(1)
Remote Object Activation
362(5)
Modifying Server
363(1)
Creating ConfigureServer
364(3)
Summary
367(2)
A Network File-Locking Server
369(20)
Local Shared Locks
370(11)
FileLock Interface
371(1)
NetworkLockServer Interface
372(1)
NLS: The Lock Server
372(3)
SharedFileLock: The FileLock Implementation
375(4)
A Test Program
379(2)
Global Locks
381(7)
The LockServer
381(1)
GlobalFileLock
382(4)
A Test Program
386(2)
Summary
388(1)
Introduction to CORBA
389(20)
Basic CORBA
389(4)
ORBs
390(1)
Stubs and Skeletons
390(1)
IIOP
391(1)
IDL
392(1)
Naming Services
393(1)
Basic IDL
393(2)
Packages of Interest
395(1)
A Simple Server
396(6)
Define the IDL
397(1)
Compile the IDL
397(1)
Implement the Server Class
398(1)
Create the Server Program
399(2)
Run the Server Program
401(1)
A Simple Client
402(2)
Callbacks
404(2)
Inheritance
406(2)
Summary
408(1)
A CORBA Session Manager
409(14)
Basic Design
409(1)
The IDL
410(1)
Implementing Session
411(3)
Implementing SessionManager
414(2)
A Session Server
416(1)
Two Clients
417(3)
Compiling and Running
420(1)
Summary
421(2)
RMI and IIOP
423(10)
The Interface
424(1)
The Server
425(1)
An RMI Client
426(2)
A CORBA Client
428(1)
Compiling and Running
429(2)
Summary
431(2)
Introduction to Using XML in Java
433(28)
Basic Concepts
433(3)
DTD
434(1)
XLS
434(1)
XML
435(1)
Creating DTDs
436(7)
Document Elements
436(7)
Combining Elements to Define the DTD
443(1)
Reading XML with Java
443(15)
SAX
444(6)
Leveraging the DOM
450(8)
Summary
458(3)
An XML Data Backup Utility
461(24)
Creating the DTD
462(1)
Handling String Encodings
463(4)
Creating the Backup Utility
467(8)
Creating the Restore Utility
475(9)
Summary
484(1)
What Are Enterprise JavaBeans?
485(12)
Roles
488(9)
Developers
488(1)
Assemblers
489(1)
Deployers
489(1)
Server Providers
489(1)
Container Providers
490(1)
Administrators
491(1)
When to Use EJBs
491(3)
EJB and CORBA
494(1)
Summary
495(2)
Programming Enterprise JavaBeans
497(62)
An Enterprise JavaBean's Environment
498(6)
Expected Services
498(3)
Possible Services
501(1)
Container
502(1)
Bean Context
503(1)
Creating an Enterprise JavaBean
504(8)
Define the Remote Interface
505(2)
Define the Home Interface
507(2)
Define the Enterprise Bean
509(2)
Create Any Additional Classes You Need
511(1)
Define Necessary Deployment Information
512(1)
Compile the Bean
512(1)
Package the Bean for Deployment
512(1)
Deploy the Bean
512(1)
Creating a Session Bean
512(20)
Stateless Session Bean Example
514(2)
Stateful Session Bean Example
516(3)
Using a Session Bean
519(6)
Other Session Bean Examples
525(5)
Programming Rules for Session Beans
530(1)
Container Responsibilities
531(1)
Pros and Cons
531(1)
Creating an Entity Bean
532(18)
Container Persistence Example
536(5)
Bean-Managed Persistence Example
541(5)
Using an Entity Bean
546(2)
Entity Bean Programming Rules
548(1)
Container Responsibilities
549(1)
Pros and Cons
549(1)
Creating a Message-Driven Bean
550(2)
Metadata, Handles, and Exceptions
552(4)
Security and Enterprise JavaBeans
556(1)
Summary
556(3)
Deploying Enterprise JavaBeans
559(14)
Deployment Concepts
560(7)
Trying the Examples from Chapter 21
567(4)
Configuring the Container-Managed Persistence
568(1)
Configuring the Message-Driven Bean
568(1)
Running the Clients
569(2)
Summary
571(2)
Enterprise JavaBeans Business Rules Engine
573(30)
The Rules Engine
574(16)
An Example Rule
575(1)
An Example Action
576(2)
The Parser
578(1)
An Example Script
579(1)
Using the Example Script
580(1)
Handling a Tag
581(9)
Check Request Example
590(10)
CheckRequest: The Interface
590(1)
CheckRequestHome: The Home Interface
591(1)
CheckRequest: The Bean
591(3)
IdentityRule: A Custom Rule
594(2)
IdentityRuleHandler: A Custom Handler
596(1)
LogRequestAction: A Custom Action
597(1)
An Example Rule Script
597(1)
An Example Action Script
598(1)
An Example Client
598(2)
Deploying the Example
600(1)
Summary
601(2)
Transactions, JTA, and JTS
603(8)
Transactions in Java
607(2)
Summary
609(2)
Using Transactions with Enterprise JavaBeans
611(20)
Transaction Options
611(8)
Isolation Levels
615(1)
Bean-Managed Transactions
616(3)
An Example for Testing Transactions
619(9)
TestBeanBean
620(8)
Reentrant Beans
628(1)
Summary
629(2)
What Are Messaging and the Java Messaging Service?
631(8)
Messaging Domains
633(2)
Applications of Messaging
635(1)
Java Messaging Service
636(1)
Summary
637(2)
Programming with the Java Messaging Service
639(56)
JMS Fundamentals
640(17)
Destinations
640(1)
The Connection Factory
641(1)
JMS and JNDI: Administered Objects
641(1)
Connections
641(2)
Sessions
643(3)
Message Producers
646(2)
Message Consumers
648(1)
Messages
648(6)
Message Selectors
654(2)
Basic Steps for Programming JMS
656(1)
Point-to-Point Messaging
657(26)
Queue Connection Factory
657(1)
Queue Connections
658(1)
Queue Sessions
658(2)
The Queue Sender
660(8)
The QueueReceiver
668(13)
The QueueRequester Utility Class
681(2)
Publish-Subscribe Messaging with Topics
683(10)
Topic Connection Factory
684(1)
Topic Connections
684(1)
Topic Sessions
685(1)
The Topic Publisher
686(6)
The Topic Subscriber
692(1)
The TopicRequester Utility Class
692(1)
Distributed Transactions and JMS Providers
693(1)
Summary
693(2)
A JMS-Based Alarm System
695(24)
Alarm
697(3)
Alarm Server
700(14)
PTimer
709(5)
AlarmConfig
714(2)
AlarmDaemon
716(1)
Summary
717(2)
Introduction to JavaMail
719(20)
The JavaBeans Activation Framework
720(2)
JavaMail Basic Concepts
722(3)
Sending a Message
725(8)
Sending a Non-Text Message
730(1)
Sending a Multipart Message
731(2)
Receiving Messages
733(3)
Summary
736(3)
Other J2EE Technologies
739(8)
Connectors
740(2)
Security
742(1)
Transformations
743(3)
Summary
746(1)
Architectural Guidelines in J2EE
747(22)
The Technologies, a Review
747(4)
Two Examples
751(3)
The Message Hospital
751(1)
The Online Store
752(2)
Development Guidelines
754(4)
Lessons from the Field
758(2)
The Eight Fallacies of Distributed Computing
760(7)
The Network Is Reliable
761(1)
Latency Is Zero
762(1)
Bandwidth Is Infinite
763(3)
The Network Is Secure
766(1)
Topology Doesn't Change
766(1)
There Is One Administrator
767(1)
Transport Cost Is Zero
767(1)
The Network Is Homogeneous
767(1)
Summary
767(2)
A Message Hospital
769(40)
Basic Design
770(1)
A New Rules Engine
771(19)
Rule
772(1)
Action
772(1)
Other Standard Classes
773(6)
The File Format
779(11)
Hospital Actions
790(4)
Monitoring Actions
794(5)
The Hospital Bean
799(3)
Installing the Hospital Bean
802(1)
Testing the Hospital
802(6)
Summary
808(1)
A 4-Tier Online Store
809(62)
Basic Design
810(5)
The Shopping Cart EJB
815(14)
ShoppingCart
815(2)
ShoppingCartHome
817(1)
Shopping CartBean
817(12)
JavaServer Pages and HTML
829(12)
Servlets
841(28)
AdlinkRotator
841(5)
Searching
846(1)
ShoppingCart Servlet
846(19)
Inventory Report
865(4)
Building and Running the Store
869(1)
Summary
870(1)
Appendix A What's on the CD-ROM 871(4)
Index 875

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program