Book Review: Professional Oracle WebLogic Server
02 Nov 2009 by Simon Haslam (in Java)
For those of you who own Patrick & Nyberg's previous book ('Mastering BEA WebLogic Server: Best Practices for Building and Deploying J2EE Applications,' ISBN 978-0471281283) some of the material will be familiar, though since that book is quite old now (2003), and based on WLS 8.1, quite a lot has changed.
One thing you quickly notice are the frequent, grey 'Best Practices' boxes which I thought, on the whole, were very good. There's also a fictional application, called bigrez.com, which is weaved into various examples throughout the book.Now let's consider each of the chapters in turn:
Ch. 1: Building Web Applications in WebLogic
Not very relevant to admins - may be useful to those who haven't had much exposure to Java
Ch. 2: Choosing a Web Application Architecture
Ch. 3: Designing an Example Java EE Application
Ch. 4: Building an Example Web Application
These architectural design questions are usually decided long before administrators get to worry about the system - interesting to dip into if you have a spare moment (eh?), but not useful for to daily administration tasks. This is not to say that there's anything wrong with these chapters, just that they're not very relevant if you're an administrator.
Chapter 5: Packaging and Deploying WebLogic Web Applications
This is much more interesting to the administrator, for example, this chapter includes a detailed discussion of the weblogic.xml descriptor file. There are also a useful sectons on pre-compiling JSP files prior to production deployment, and both the WebLogic Deployer Utility and wldeploy Ant task (something which will be new to OC4J admins).
Chapter 6: Building Enterprise JavaBeans in WebLogic Server
Chapter 7: Building an Example EJB Application
Again, probably too development-specific for a general WLS administrator.
Chapter 8: Packaging and Deploying WebLogic Applications
Very interesting; whilst some of the topics may not apply to all enterprise java applications, there's a lot of useful information like the structure of an exploded EAR file and controlling the behaviour of the classloader.
Chapter 9: Developing and Deploying Web Services
This whole chapter has a different feel when compared to developing web services with JDeveloper, and is mainly aimed at developers (though there is a short section on web service testing).
Chapter 10: Using WebLogic JMS
I'm still quite 'at sea' when it comes to WebLogic JMS, mainly because it's not an area that OC4J was strong in, but is a key selling point for WebLogic. Obviously if your application uses JMS you'll need to know how to configure it, but I suspect most java applications built by traditional Oracle-based organisations don't currently use it (though I might be wrong!). Therefore this very detailed chapter may only be useful to some administrators at the moment.
Chapter 11: Using WebLogic Security
This is security in the WLS / BEA world. For example, it discusses the common database and LDAP based security providers but I only saw one reference, in passing, to OID and OVD (I wonder whether the technical editor of this book had said "You've not mentioned any Oracle security products!"). The text also refers to Single Sign-On (SSO) in a different sense to how Oracle App Server admins will be used to (i.e. the OSSO or OESSO servers); its WebLogic meaning refers to the delegation of identity authentication, for instance using SAML or SPNEGO (like WNA that may be familiar to OID/OSSO administrators). I'm not arguing the relative merits of the terminology, just that it may seem confusing for those coming from an Oracle background.
As to the relevance of this chapter, certainly some of the early sections, like the database provider, are useful. However, for WebLogic application servers deployed as part of an Oracle Fusion Middleware infrastructure, which will probably include an Oracle Identity Management tier, the remaining part of the chapter won't be of much use.
Chapter 12: Administering and Deploying Applications in WebLogic Server
This is an excellent chapter for administrators and, at 123 pages long, quite a substantial one. It starts from the simple concepts, like describing domains, but quickly moves on to admin ports, session based routing and clustering. There are discussions about monitoring, JMX, the WebLogic Diagnostics Framework and even setting up SNMP traps.
Chapter 13: Optimizing WebLogic Server Performance
This section has a mixture of detailed configuration topics from OS tuning, to managing the JVM heap, to database JDBC connection pools - again all very useful to administrators, particularly of more demanding systems.
Chapter 14: Development Environment Best Practices
As the title suggests, this may assist development team leaders and, to a lesser extent, those maintaining development environments. The primary IDE discussed is Eclipse (with OEPE), though JDeveloper does get 4 pages of coverage.
Chapter 15: Production Environment Best Practices
To wrap up we're squarely back in administrator territory! This covers some miscellany from JVM scaling, to clustering strategies, to load balancing and firewalls.
Conclusions
In my opinion this is still a BEA WebLogic Server book, rather than Oracle WebLogic Server book - had the BEA acquisition not taken place, I wonder whether the content would have been significantly different. It is probably intended for people with a very strong Java background and not too much interest in the database and wider management tools, such as Oracle Enterprise Manager. You will not find a bias towards, or discussion about integration with, other Oracle products - this may or may not matter to you, depending on the number of Oracle products in your middleware stack.
That said, my copy of this book already has quite a few tell-tale yellow stickies indicating useful pages - a good sign! From a strictly WebLogic administration point of view there are probably only 5 or 6 chapters that are entirely relevant, so it was not exactly what I was hoping for, mainly because you have to hunt for material you need. However it is still an excellent book. For a senior java application designer, or developer, working with WebLogic it probably ticks many more boxes and will be a 'must buy'.
This book will, as they say, be available soon from all good booksellers (ISBN 978-0470484302), and should be on your list to Father Christmas!

