J2EE Applications and BEA WebLogic Server / Edition 2 available in Multimedia Set
- Pub. Date:
- Prentice Hall
J2EE Applications and BEA WebLogic Server®
Revised by Angela Yochem David Carlson Tad Stephens
A revised and updated edition of the best-selling book by Michael Girdley, Rob Woollen, and Sanda L. Emerson, this is your start-to-finish guide to developing Web-based applications using J2EE 1.3 (with references to 1.4 features) and the new BEA WebLogic Server 8.1.
One step at a time, and one technology at a time, the authors walk you through building a complete, robust Web application. You'll prototype user interfaces, code server-side presentation logic and JSPs, implement database connectivity, establish central registries, provide JMS messaging, code EJBs, even integrate email facilities. Along the way, you'll discover how each module fits into your overall application design, as you learn best practices for enhancing availability, reliability, and security. Coverage includes:
- Leveraging the Model-View-Controller (MVC) design pattern
- Using JDBC and BEA WebLogic's transaction support to integrate enterprise databases
- Preparing your applications to run in clustered BEA WebLogic Server environments
- Developing EJBs that fully leverage BEA WebLogic Server's container services
- Best practices and guidelines for testing, compilation, and deployment
- Working with WebLogic Workshop, BEA's unified development environment
- Utilizing BEA WebLogic Platform to integrate business processes and back office systems in an end-to-end application framework
J2EE Applications and BEA WebLogic Server, Second Edition is highly approachable for WebLogic beginners, and exceptionally useful for experienced developers. Whatever your background, it'll help you build the high-performance, high-value Web applications your business demands.
Professional Technical Reference
Upper Saddle River, NJ 07458
$49.99 U.S./$71.99 Canada
|Edition description:||Paperback & CD-ROM|
|Product dimensions:||6.90(w) x 9.00(h) x 1.50(d)|
About the Author
About the Authors
ANGELA YOCHEM is a Lead Systems Architect at UPS in Atlanta, GA. She specializes in rapid delivery of large-scale J2EE applications. She participated in the WebLogic Workshop advisory board for the 8.1 release, and is a member of the Atlanta BEA user group board of directors. Formerly of IBM, she has middleware-related patents pending, and teaches Java, Network Security and System Administration at the college level. Angela has an MS in Computer Science from the University of Tennessee.
DAVID CARLSON is a freelance programmer in Portland, OR. His career includes stints at several large companies including IBM, UPS, and Interface, and he co-founded the Internet consultancy Elemental Interactive. He has worked extensively with WebLogic Server and has experience "in the trenches" building several large-scale applications. David has an MS in Computer Science from the Georgia Institute of Technology.
TAD STEPHENS is a system engineer with BEA Systems, Inc. As a employee of the former company WebLogic, he has 6 years experience with WebLogic Server and the corresponding WebLogic-based products. He specializes in the application of distributed computing technologies in the financial services and telecommunications sectors. Tad has an MBA from the University of Alabama and a BS in Computer Science from the University of Tennessee.
Table of Contents
WebLogic Server and J2EE. J2EE Technologies Covered in This Book. Presentation Logic. Database and Transaction Support. Object Registry and Remote Method Invocation. Enterprise JavaBeans. Java Message Service. JavaMail. Administration. Security. WebLogic Server's Distributed Deployment Support. About WebAuction. WebLogic Platform 8.1.
2. Presentation Logic.
Presentation Logic. Introducing Servlets. The Web Application. Best Practices for Servlets. References.
3. Advanced Servlet Techniques.
Servlets and Web Sessions. Baking Your Own Cookies. Filters. Using Servlets with WebLogic Server Clustering. Best Practices for Servlets. Resources. Putting It All Together.
4. Using WebLogic Server JavaServer Pages.
Why JSP. Integrating Java Code and JSP Markup. JSP Basics. Custom tags. References.
5. WebLogic Server JDBC and JTA.
WebLogic Server JDBC. Transactions and JTA. WebLogic Server and Distributed Transactions. Prepared Statements. Error Handling and SQL Warnings. Metadata. Advanced JDBC Features. Best Practices for JDBC. JDBC and Transactions in the WebAuction Application. Summing It Up.
6. Remote Method Invocation and Distributed Naming.
Remote Method Invocation. JNDI: Java's Naming Service. Conclusion. References.
7. Enterprise Messaging with the Java Message Service (JMS).
JMS Fundamentals. Sample JMS Queue Producer/Consumer. JMS Messages. Message Types. JMS and Transactions. Clustering JMS. Exception Listeners. Using Multicast JMS. JMS Best Practices. Putting It All Together. References.
8. Using Session Enterprise JavaBeans.
Enterprise JavaBeans Overview. Basics of EJBs. Stateless Session EJBs. Stateful Session EJBs. Using Transactions with Session Beans. EJB Security. EJB Environment. EJB References. Resource Manager References. Handles. Development Tasks and WebLogic Workshop. Best Practices. Putting It All Together. References.
9. Entity EJBs.
Rationale for Entity EJBs. Entity Bean Basics. CMP Entity Bean Example. CMP. Container-Managed Entity Bean Lifecycle. Introduction to CMRs. Writing EJB-QL for CMP Finders. BMP Entity Beans. Advanced Topics for Writing Entity EJBs. Entity Bean Inheritance and Polymorphism. Entity Beans and Locking. Using Read-Only Entity Beans. Session Beans as a Wrapper for Entity Beans. Using Java Beans as Value Objects. BMP Versus CMP. Putting It All Together. References.
10. Using Message-Driven EJBs.
Message-Driven EJB Basics. Message-Driven EJB Example. MDBs and Concurrency. Specifying a JMS Connection Factory. Using Transactions with MDBs. Message Acknowledgment. New Customer Example. Using JMS for Communication with Enterprise Systems. Message-Driven EJB Advantages. Putting It All Together. References.
11. Interfacing with Internet Mail Using WebLogic Server JavaMail.
About E-mail. About JavaMail. Using JavaMail to Send Simple E-mail. Where to Find More Information on JavaMail and Internet Mail. JavaMail Best Practices.
12. Administering WebLogic Server 8.1.
Java Management Extensions Overview. WebLogic Server Administration. WebLogic Administrative Tools. Application Deployment. WebLogic Service Performance Monitor. WebLogic Clustering Configuration. Administrative Best Practices. Putting It All Together.
13. Application Security with WebLogic Server 8.1.
Security Technology Overview. WebLogic Security and JAAS. WebLogic Security Service Providers. Embedded LDAP Server. Securing WebLogic Resources. WebLogic Server 8.1 and SSL. WebLogic Server 8.1 Security and Web Services. Administering WebLogic Server 8.1 Security. WebLogic Server Security Best Practices. Putting It All Together.
14. Designing the Production Deployment.
Designing for Deployment. WebLogic JRockit. WebLogic Deployment Scenarios: Case Studies. Types of Client Software. Using a DMZ and Firewalls in a Web Deployment. Integrating Web Deployments with Data Stores. Using WebLogic Server Clustering. Web Application Deployment Details. Application Deployments. Mixed Deployments. Application Deployment Process. Best Practices for Deploying WebLogic Server. Putting it all together.
15. Web Auction Design Goals.
Application Architecture. Assembling the Application Components: WebAuction. Deploying the WebAuction Application.
16. WebLogic Workshop.
WebLogic Workshop IDE. WebLogic Workshop Project Model. WebLogic Workshop Support For Web Services. Control Framework. Putting It All Together.
17. Capacity Planning for the WebLogic Server.
WebLogic JRockit. Analysis of Capacity Planning. Methodology and Metrics for Capacity Planning. Capacity Planning Best Practices.
18. Introduction to WebLogic Platform 8.1.
WebLogic Platform Components. WebLogic Workshop Platform Edition. WebLogic Integration. WebLogic Portal. WebLogic Server 8.1. WebLogic JRockit. WebLogic Platform Summary.
Appendix A: Web Services Overview.
What Is BEA WebLogic Server?
BEA WebLogic Server is the market-leading application server for enterprise-level, multitier, fully distributed applications. WebLogic Server's implementation of J2EE 1.3 technologies, Web services, and related standards make it the de facto industry standard for developing and deploying Java- based Web applications.
BEA WebLogic Server offers efficient use of system resources such as client and database con-nections. It can support commerce applications for millions of users and hundreds of thousands of requests per hour. It supports clustering of server instances for reliability, scalability, and high per-formance. It maintains and manages application logic and business rules for a variety of clients.
In this book, you will learn about BEA's implementation of Sun Microsystems' Java 2 Platform Enterprise Edition (J2EE). This preface and Chapter 1 introduce many acronyms that are part of the J2EE suite of technologies. The remaining chapters in the book cover many of these technologies in detail. No prior knowledge of J2EE technology is assumed, so if the J2EE terminology makes no sense at this point, don't worry. The remaining chapters provide an introduction to the J2EE specifi-cation and the WebLogic Server implementation.
WebLogic Server Overview
The Container-Component Model
The WebLogic Server platform (in Java parlance) can be thought of as a container that provides ser-vices to components of user applications. Components such as EJBs, JavaServer Pages (JSPs), and serv-lets reside in the WebLogic Server container and take advantage of the services provided by it.
The WebLogic Server container (the large pentagon) encloses various J2EE services. Interconnections of services are depicted with lines and arrows. WebLogic Server management (via the WebLogic Management Framework) and security are shown as layers external to the container.
WebLogic Platform Overview
BEA's WebLogic Platform is a complete application infrastructure platform, enabling developers to build and integrate enterprise applications easily and rapidly. WebLogic Platform is designed to address end-to-end problems for the enterprise, providing standards-based frameworks to help you build, test, and deploy J2EE applications, business processes, workflows, messaging applications, enterprise portals, trading partner applications, and more.
WebLogic Platform consists of a suite of products, including WebLogic Server, WebLogic Inte-gration Server, WebLogic Portal Server, WebLogic Workshop, and WebLogic JRocket JVM. These products share a common infrastructure and common tools, making WebLogic Platform an excellent choice for building and integrating enterprise applications.
Chapter 18 provides an overview of WebLogic Platform components and how they relate to one another.
How to Use This Book
J2EE Applications and BEA WebLogic Server contains 18 chapters, each of which covers a phase of devel-oping Web-based applications using J2EE and WebLogic Server. Each chapter is organized around a particular Java Enterprise technology that you use to create a component of the WebAuction applica-tion, an online auction site that functions as the core example set for this book. The discussion of EJBs, which are the major players in J2EE application development, spans three chapters.
Each chapter notes where an application module fits in an overall application design; how to plan for efficient implementation; the specifics of the example implementation; and recommenda-tions for best practices that can guide the implementation of a similar component at your site.
The Enterprise Java APIs and associated APIs that are part of the J2EE specification are dis-cussed in this book in the approximate order in which a developer might use them. However, each technology is described and illustrated without dependencies on material covered in any other chapter.
Whether you're an experienced Java developer or a novice, we assume that you're just getting started with developing applications for an application server. Because individual application devel-opment styles differ, each chapter is self-contained. You can read the chapters in the order that best suits your development style.
After getting a basic idea of the concepts and best practices for each technology, the developer can begin to design some of the major modules, such as the EJBs for the server-side logic, or the JSPs for the user interface.
In narrative form, the chapters follow this sequence: First, the developer can prototype the user interface, coding the server-side presentation logic in servlets (Chapters 2 and 3) and JSPs (Chapter 4). The Model-View-Controller (MVC) design pattern is explained in detail in these chapters.
When the basic outline of the application behavior is known, the developer can plan for database connectivity with JDBC and transactions (Chapter 5).
As application modules emerge, the developer sets up the central registry for object and method names, and the framework for Remote Method Invocation, or RMI (Chapter 6).
In order to ensure efficient performance when executing an application over a cluster of WebLogic Servers, the developer uses the JMS protocol to set up the middleware-oriented messaging layer to sequence and manage correct object behaviors (Chapter 7).
To ensure application component independence and to take maximum advantage of the WebLogic Server container's services, the developer codes the EJBs, which are at the heart of the appli-cation's functionality (Chapters 8, 9, and 10).
To include email functionality, the developer connects the application to Internet mail using the Java-Mail protocol (Chapter 11).
After unit testing, the developer plans for deployment of the completed application, surveying the hardware and software elements that need to interoperate when an application is deployed. WebLogic management and administration services allow applications to be deployed in production environments and allow those environments to be monitored for enterprise-quality availability and reliability. (Chapter 12). It is also necessary to implement and enforce appropriate levels of security (Chapter 13) based on the needs of the application and the business, which can be done with a combination of WebLogic Server features and J2EE security functions.
After the deployment design, methodology, and tools have been surveyed, the developer com-piles, tests, and deploys the completed application (Chapter 14), following best practices and guidelines learned from years of experience.
An example application for review and deployment is outlined in Chapter 15 (the WebAuction application). BEA's unified development environment, WebLogic Workshop, offers an easy-to-use, intuitive suite of services for the J2EE and Web Services programmer. (Chapter 16). WebLogic Plat-form builds on the capabilities of WebLogic Server 8.1 by adding user presentation, business pro-cess management, data integration, and back-office system access in a complete, end-to-end application framework (Chapter 18).
An introduction to Web Services is found in Appendix A.