BEA's WebLogic Server implements the full range of J2EE technologies, and includes many additional features such as advanced management, clustering, and web services. Widely adopted, it forms the core of the WebLogic platform, providing a stable framework for building scalable, highly available, and secure applications. In fact, in the long list of WebLogic's strengths and features, only one shortcoming stands out: the documentation that comes with the WebLogic server often leaves users clamoring for more information.
WebLogic: The Definitive Guide presents a 360-degree view of the world of WebLogic. Providing in-depth coverage of the WebLogic server, the book takes the concept of "definitive" to a whole new level. Exhaustive treatment of the WebLogic server and management console answers any question that developers or administrators might think to ask. Developers will find a useful guide through the world of WebLogic to help them apply their J2EE expertise to build and manage applications. Administrators will discover all they need to manage a WebLogic-based setup. And system architects will appreciate the detailed analysis of the different system architectures supported by WebLogic, the overall organization of a WebLogic domain and supporting network infrastructure, and more.
WebLogic: The Definitive Guide is divided into three sections that explore WebLogic and J2EE, Managing the WebLogic Environment, and WebLogic Enterprise APIs. Some of the topics covered in this comprehensive volume include:
Building web applications on the WebLogic Server
Building and optimizing RMI applications
Using EJBs with WebLogic, including CMP entity beans
Packaging and deploying applications
Understanding WebLogic's support for clustering
Performance tuning and related configuration settings
Configuring WebLogic's SSL support
Maximizing WebLogic's security features
Building web services with XML
Using WebLogic's JMX services and MBeans
Anyone who has struggled with mastering the WebLogic server will appreciate the thorough, clearly written explanations and examples in this book. WebLogic: The Definitive Guide is the definitive documentation for this popular J2EE application server.
Jon Mountjoy has worked with J2EE technologies since their inception, and with WebLogic in particular. He currently works as a Product Development Manager at a firm specializing in risk management, and has held posts training and consulting in J2EE technologies. Jon has a post-graduate degree in computer science.
Avinash Chugh presently works as Senior Development Manager for a firm that produces software for the regulated industries (finance, energy, pharmaceutics). He has over three years experience with J2EE technologies, primarily on the WebLogic Server. Avinash holds a post-graduate degree in computer applications from Delhi University. He likes to spend his free time on vegetarian cooking, racquet sports, and ambient/experimental music.
Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The images on the cover of WebLogic: The Definitive Guide are sand stars. The sand star is a starfish whose main defining feature is the spines that cover the sides of its legs, which differ from the suction cups that most starfish have. The sand star uses these spines to travel. It is chiefly nocturnal and tends to bury itself in sand in daylight hours. Its spines are helpful for allowing it to burrow into and move quickly throughout this sandy environment. The sand star swallows its food whole. Its diet consists of snails, sea urchins, seaweed, other starfish and sand stars, and any dead fish it can find. It often feeds off other creatures it finds buried in the sand alongside it. Mary Brady was the production editor, and Audrey Doyle was the copyeditor for WebLogic: The Definitive Guide. Mary Brady was the proofreader. Reg Aubry and Claire Cloutier provided quality control. Mary Agner provided production support. Nancy Crumpton wrote the index.
Emma Colby designed the cover of this book, based on a series design by Edie Freedman. The cover image is a 19th-century engraving from the Dover Pictorial Archive. Emma Colby produced the cover layout with QuarkXPress 4.1 using Adobe's ITC Garamond font.
David Futato designed the interior layout. This book was converted by Julie Hawks to FrameMaker 5.5.6 with a format conversion tool created by Erik Ray, Jason McIntosh, Neil Walls, and Mike Sierra that uses Perl and XML technologies. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont's TheSans Mono Condensed. The illustrations that appear in the book were produced by Robert Romano and Jessamyn Read using Macromedia FreeHand 9 and Adobe Photoshop 6. The tip and warning icons were drawn by Christopher Bing. This colophon was written by Mary Brady.
Comments about oreilly WebLogic: The Definitive Guide:
WebLogic: The Definitive Guide published by O'Reilly has to be the best WebLogic book in the market today.
The book starts off with a nice introduction to Web application in the context of WebLogic including discussion of WebLogic specific descriptors. Everything you need to create production-ready application including HTTP Session replication, clustering HTTP sessions using in-memory replication, HttpClusterServlet and SSL is discussed in here in a very clear and concise manner. There is also a section that describes how to setup an Apache webserver to front a cluster of WebLogic servers. This section also includes a great section on security and using security in your application.
The next chapter in the book discusses JNDI in great detail. I re-read this chapter several times and just love the treatment this topic was given. There were things in there that I have learned over the last 5 years of using WebLogic, which made me wish I had this book in 1999. There is clear and in-depth explanation of JDNI, binding object to JNDI, RMI, and RMI over IIOP, and many other JNDI best practices.
After JNDI, the book moves on to JDBC and this chapter provides a very comprehensive tutorial on how to use JDBC and database in the context of WebLogic. The discussion includes connection pools, multipools, and Data Sources. My favorite part of this chapter was the detailed section on all of the connection pool configuration parameters. WebLogic's JDBC sub-system is incredibly powerful but the WebLogic console or help doesn't do a good job of explaining all of the features and settings and it's nice to have a complete guide to all of the configuration parameters. The chapter also includes discussion on using Java Data Sources in context of a transaction and javax.transaction.UserTransaction.
The JDBC chapter also includes a section on Rowsets. Rowsets were introduced in JDBC 2.0 and the Rowset interface extends the java.sql.ResultSet interface. WebLogic's RowSet implementation is great and I remember last year's eWorld where Rob Wollen and Seth White hosted a session on RowSet and I was very impressed with the features they offered. There is Java code on how to use Rowsets including creating, populating, and manipulating Rowsets along with transactions and disconnected Rowsets. There is also discussion on the different optimistic concurrency schemes.
After JDBC, the book moves onto transactions and the Java Transaction API (JTA) and how to use them in context of JDBC transactions (XA and non-XA), distributed transactions, and EJB transactions. Very nicely written chapter and anyone needing to understand how to build and deploy applications that use JTA will find everything they need here. The next chapter deals with Java Connector Architecture (JCA) and I basically skimmed this chapter. I don't have a lot of experience with JCA but this chapter looks good.
The next chapter deals with the topic of the Java Messaging Service or JMS. This is also one of those chapters that I re-read several times and I love the way it is written. This is very comprehensive chapter and I won't list out all the contents but I have to highlight the section on clustered JMS. There is a brief mention of Message-driven Beans (MDBs) in this section but detailed treatment is in the EJB section.
The next section of the book deals with Enterprise Java Beans or EJBs. The chapter starts off with a quick tutorial of Cedric's EJBGen. From EJBGen, you move into discussion of the now deprecated ejbc (WebLogic EJB compiler) and the newer appc class for compiling EJBs. After a brief discussion of transactions, we move into configuration aspects including pooling of stateless and stateful EJBs. The issue of concurrency with entity beans is also discussed here along with some good concurrency strategy. The issue of clustering and failover of stateful and stateless EJBs is also discussed here. The EJB section continues and includes topics like CMP 2.0 and EJB QL. If you are new to CMP or Entity Beans, you will really benefit from this chapter as it includes an in-depth look and all of the issues involved in CMP including Container-Managed relationships, cascading deletes, caching, EJB QL and WebLogic specific extensions to EJB QL.
The next chapter deals with packaging and deployment of applications to the WebLogic server. After a quick decision of the deployer tool, the section describes all the features available for application deployment including the idea of staging applications and auto deployment. I really like the section that describes WebLogic's custom classloaders and how class loading works in EAR files. This is usually a very confusing topic and people new to J2EE or EAR files will spend a lot of time trying to figure out classpath issues.
After deployment, the book moves on to install and creation of WebLogic domains. This section is useful for the developer, but really necessary for the WebLogic admin that is going to manage the production environments. WebLogic is the best application server out there and with all the features comes complexity. There are a lot of options in setting up managed, admin servers, node manager and this chapter does a great job of articulating all of the options and highlighting some of the best-practices in WebLogic software install.
The next section deals with clustering, load balancing and failover and how to achieve high-availability for your application. There is great discussion on how to setup a cluster with multiple configurations including splitting web and object tier across clusters and co-locating web/object tier (my preferred option) in the same cluster.
The next chapter discusses some best practices on performance, monitoring and tuning. This section includes information on tuning Http Sessions, JDBC pools, tuning JMS, optimizing EJB pools, and optimizing CMP. There is also discussion on how to tune the WebLogic server by configuring execute queues, server threads and detecting things like stuck threads, etc. There is some discussion on tuning the JVM and I was happy to see JRockit mentioned here. The next chapter discusses SSL and how to use SSL with WebLogic. I glossed over this chapter as we use a hardware SSL accelerator and this is not a topic of interest to me.
The next section deals with security and it is very comprehensive and thorough. Starting the JVM security and working up to the security provider architecture provided by WebLogic, this chapter provides great information about each topic including JAAS and the embedded LDAP server. The section on JAAS includes code samples that are ready to be used for your application for your authentication and authorization needs.
After security, the book moves onto XML and discusses things like SAX, DOM, WebLogic's FastParser, StaX and XML registry. After XML, the book moves into Web Services and all of the services provided by WebLogic including the Ant tasks (servicegen) that take any J2EE components and turn them into Web Services and JAX-RPC. This chapter also includes a nice section that offers some design consideration when creating or consuming Web Services. I really like the JAX-RPC section and it includes a lot of code/Ant samples for creating clients and servers.
The last section of the book deals with Java Management Extensions (JMX). There is also a mention of WLShell in this chapter along with some nice samples. After JMX, the logging architecture of WebLogic is discussed. The book rounds out with chapter on SNMP and how to use SNMP to monitor WebLogic.
In closing, this is a great book for developers, architects and system or network administrators that work with WebLogic. I think this is a must-own book and fills in all of the gaps that are left with WebLogic's online documentation. I would highly recommend this book to anyone working with WebLogic in any capacity. You are guaranteed to learn something new every time you crack open this book. Run, don't walk and buy this book.