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.

9780471785439

Professional Apache Geronimo

by ; ;
  • ISBN13:

    9780471785439

  • ISBN10:

    0471785431

  • Format: Paperback
  • Copyright: 2006-10-01
  • Publisher: Wrox
  • 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: $39.99

Summary

Geronimo is a popular production-grade Open Source J2EE 1.4 certified server available free of charge. It is the only server of its kind licensed under the Apache Software License 2.0, allowing free adaptation and modification for commercial or non-commercial use. The server is well-supported internationally by a large base of users, developers, and support vendors. Geronimo can host a variety of server applications. It comes equipped with a relational database server and message broker, enabling you to immediately deploy your enterprise applications. With all this potential, getting started with Geronimo can be a daunting task. This team of experienced authors has crafted a book to make your experience with Geronimo go smoothly -- and they've packed it with numerous examples of configuration and deployment for the Geronimo server. Whether you've been using a commercial J2EE server or this is your first encounter with an application server, you'll quickly learn what Geronimo can do for your environment. What you will learn from this book * How to configure and deploy a J2EE application on Geronimo * Ways to download, install, configure, and secure the server * Expert tips on server customization and tuning * How to use the various administrative, management, and troubleshooting tools that accompany Geronimo * How to take advantage of the highly modular architecture of the Geronimo server, and how it works inside Who this book is for This book is for managers, administrators, and developers who are either considering Geronimo for possible production deployment, or are already using Geronimo and are looking for a way to kick-start the implementation process. Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.

Author Biography

Jeff Genender has more than 17 years of software architecture, team lead, and development experience in multiple industries. He is a frequent speaker on topics pertaining to Enterprise Service Buses (ESBs), Service Oriented Architecture (SOA), and application servers. Jeff is an active committer and Project Management Committee (PMC) member for Apache Geronimo, as well as a committer on OpenEJB, ServiceMix, and Mojo (Maven plugins). Jeff also serves as a member of the Java Community Process (JCP) expert group for JSR-244 (Java Platform, Enterprise Edition 5 [Java EE 5] Specification) as a representative of the Apache Software Foundation. Jeff is an Open Source evangelist and has successfully brought Open Source development efforts, initiatives, and success stories into a number of Global 2000 companies, saving these organizations millions of dollars in licensing costs.

Bruce Snyder is a 10-year veteran of enterprise software development and a recognized leader in Open Source software. Bruce has experience in a wide range of technologies, including Java Enterprise Edition (EE), Service Oriented Architecture (SOA), and Enterprise Service Buses (ESBs). In addition to his role as a senior architect for LogicBlaze, Bruce is also a founding member of Apache Geronimo and a developer for Apache ActiveMQ, Apache ServiceMix, and Castor, among other things. Bruce also serves as a member of a few JCP expert groups JSR-221 (JDBC 4.0), JSR-243 (Java Data Objects 2.0) and JSR-291 (Dynamic Component Support for Java). In addition, Bruce is also a speaker at industry conferences, including The ServerSide Java Symposium, Java in Action, JavaOne, ApacheCon, JAOO, SOAWeb Services Edge, No Fluff Just Stuff, and various Java user groups.

Sing Li (who was bitten by the microcomputer bug in the late 1970s) has grown up with the Microprocessor Age. His first personal computer was a $99 do-it-yourself Netronics COSMIC ELF computer with 256 bytes of memory, mail ordered from the back pages of Popular Electronics magazine. A 20-year industry veteran, Sing is a system developer, Open Source software contributor, and freelance writer specializing in Java technology and embedded and distributed systems architecture. He regularly writes for several popular technical journals and e-zines, and is the creator of the “Internet Global Phone,” one of the very first Internet phones available. He has authored and coauthored a number of books across diverse technical disciplines including Geronimo, Tomcat, JSP, servlets, XML, Jini, media streaming, device drivers, and JXTA.

Table of Contents

Introduction xxi
Getting Started with Geronimo
1(14)
Where to Find Geronimo
1(5)
Geronimo Build and Releases
3(2)
Binary versus Source Download
5(1)
Jetty versus Tomcat Binary Downloads
5(1)
Full Installation versus Minimal Little-G Server
6(1)
Before Installing Geronimo
6(2)
Hardware Platform Requirements
6(1)
JVM Requirement
7(1)
Installing the Geronimo Server
8(4)
Customizing Geronimo after Installation
8(1)
The config.xml File
8(2)
Running the Geronimo Server
10(1)
Verifying Your Installation of Geronimo
11(1)
Summary
12(3)
Basic Geronimo Configuration
15(24)
Deploying Your First Geronimo Application
16(7)
Deploying Applications with the Geronimo Deployer Tool
17(3)
Application Deployment Using the Geronimo Web Console
20(3)
Geronimo and J2EE Software Components
23(3)
Standard Deployment Descriptors
24(1)
Geronimo-Specific Deployment Descriptors
25(1)
External Deployment Plan
26(1)
Loading, Starting, and Stopping Components
26(11)
The Geronimo Component Lifecycle
28(2)
Making Basic Configuration Changes to Modules
30(7)
Summary
37(2)
Apache and Geronimo
39(14)
The Organization behind Geronimo
39(9)
Founded on World's Most Popular Web Server
40(1)
Apache Software Foundation
41(1)
Geronimo Has Inherited the Apache Spirit
42(1)
Geronimo As a Top-Level ASF Project
43(5)
Understanding Open Source Software Licenses
48(3)
The MIT License
49(1)
The BSD License
49(1)
The New BSD License
49(1)
GNU's General Public License
50(1)
LGPL
50(1)
Apache License 2.0
50(1)
Interpreting the Licenses
51(1)
Summary
51(2)
Geronimo's J2EE 1.4 Components
53(22)
Geronimo and the J2EE Tiered Architecture
54(1)
Geronimo's Web Tier
55(3)
Components Deployable at the Web Tier
56(1)
Tomcat and Jetty --- Web-Tier Containers
57(1)
The Business Tier
58(3)
Components Deployable at the Business Tier
58(1)
Deployable Module at Geronimo's Business Tier
59(1)
Deploying EJBs As Part of an Enterprise Application
60(1)
OpenEJB at the Business Tier
60(1)
ActiveMQ at the Business Tier
60(1)
The EIS Tier
61(2)
ActiveMQ at the EIS Tier
62(1)
Derby at the EIS Tier
63(1)
JavaMail for Integration to Email Systems
63(1)
Web Services
63(3)
AXIS and Web Services
64(1)
Geronimo Web Services Integration
64(2)
UDDI Support
66(1)
Interoperability Features
66(2)
Difference between J2EE EIS Tier and Interoperability
67(1)
CORBA Interoperability
67(1)
Support for Application Clients
68(2)
Geronimo Container Services
70(3)
Naming and Directory Service
70(1)
Transaction
71(1)
Security
71(1)
Manageability
72(1)
Configuration Management
72(1)
Summary
73(2)
Geronimo Architecture and Directory Structure
75(24)
GBeans in Geronimo
76(2)
GBeans and Modules
77(1)
GBeans and Manageability
78(1)
Geronimo Modules and Assemblies
78(2)
Geronimo Directory Structure
80(18)
The Installation Directory
80(1)
The bin Directory
80(1)
The deploy Directory
81(1)
The docs Directory
81(1)
The lib Directory
81(2)
The repository Directory
83(7)
The schema Directory
90(3)
The var Directory
93(5)
Summary
98(1)
The Geronimo Deployer
99(18)
Getting Acquainted with the Deployer
100(4)
Deploying Modules to a Geronimo Server Instance
100(1)
The JSR-88 Personality of the Command-Line Deployer
101(1)
The Benefits of JSR-88
102(1)
Support for Offline Installation Mode
103(1)
Using the Deployer
104(11)
Deployer General Options
105(1)
Deployer Commands
106(5)
The Maven Deployment Plug-In
111(4)
Summary
115(2)
Using the Geronimo Debug Console and jconsole
117(30)
Debug Console Architecture
118(1)
JMX Overview
118(3)
The JMX Levels
119(1)
Instrumentation Level
119(1)
Agent Level
120(1)
Distributed Services Level
121(1)
JSR-77 Overview
121(7)
Management EJB
121(2)
Object Names in JSR-77
123(4)
JSR-77 Manageable States
127(1)
Installing the Debug Console
128(1)
Starting the Debug Console
128(7)
Starting the jconsole JMX Console
129(3)
Accessing the Debug Console
132(1)
Filtering the Components That Are Displayed
133(2)
Troubleshooting a Deployment --- An Example
135(9)
Checking Console Output
136(1)
Examining the Geronimo Log File
137(2)
Correcting the Deployment Plan
139(1)
Querying Components from a Deployed Application on the Debug Console
140(2)
Viewing the Attributes of a Geronimo Managed Object
142(2)
Summary
144(3)
Geronimo Web Console
147(28)
Using the Web Console
148(2)
Web Console Architecture
148(1)
Logging on to the Web Console
148(1)
Adding More Console Users
149(1)
Navigating the Server's Functional Menus
150(9)
Obtaining System Information on the Geronimo Server
150(1)
Viewing Java Virtual Machine Properties
151(1)
Viewing and Searching Log Files
151(2)
Shutting Down the Server
153(1)
Configuring Web Server Connectors
154(2)
Configuring and Controlling the ActiveMQ JMS Server
156(1)
Monitoring Thread Pools
157(1)
Exposing Geronimo Applications via a Web Server
158(1)
Navigating the Services Functional Menus
159(5)
Installing Artifacts into the Geronimo Repository
159(3)
Installing Database Pools
162(1)
Creating JMS Resource Groups
163(1)
Deploying and Managing Applications
164(4)
Deploying Applications
164(2)
Managing Deployed Modules
166(2)
Working with Geronimo Plug-Ins
168(2)
Security Configuration
170(2)
Configuration of Console Realm
170(1)
Security Realm Configuration
170(1)
Keystore Configuration
171(1)
Embedded Database
172(2)
Obtaining Database Information
172(1)
Database Manager Portlet
173(1)
Summary
174(1)
Geronimo Deployment Plans
175(8)
Deployment Descriptors and Plans
175(5)
The Geronimo Deployable Modules
176(1)
Standard J2EE Deployment Descriptors
176(2)
Deployment Plans Naming
178(1)
Deployment Plan Internal to the Module
179(1)
The Geronimo Deployment Architecture
180(2)
Deployed Module in the Repository
180(1)
Assignment of Module IDs
181(1)
Summary
182(1)
Web Container Configuration and Jetty
183(24)
Web Container --- Jetty or Tomcat
184(6)
Running Both Jetty and Tomcat at the Same Time?
184(6)
Configuring Web Applications
190(10)
Geronimo-Specific Web App Deployment Plan
190(1)
Deploying/Undeploying/Starting/Stopping Applications
191(2)
Web Descriptor Namespace Versions
193(7)
Jetty GBeans
200(6)
Summary
206(1)
Tomcat Web Container Configuration
207(34)
Using Tomcat in Geronimo
208(1)
Running and Verifying Tomcat
208(1)
Configuring Tomcat
209(30)
Tomcat Architecture Overview
210(1)
Geronimo Tomcat Configuration
211(28)
Summary
239(2)
Deploying Enterprise Applications (EAR) with OpenEJB
241(36)
The J2EE Model for EJB Access
242(5)
Web-Tier EJB and Resource References
243(1)
External References in EJB JAR Files
244(1)
Resolving Local References within an EAR Module
245(1)
Mapping External References
246(1)
Example of Deploying Session and Entity EJBs
247(18)
Deploying Session and CMP Entity Beans
248(6)
The openejb-jar.xml Deployment Plan
254(3)
Resolving EJB References in Geronimo
257(1)
Mapping Internal EJB References
258(1)
Mapping External EJB References
258(1)
General Configuration Concerns
259(1)
Informing the Container of Components to Deploy
259(1)
Creating Derby Databases for the CMP Entity Bean
260(2)
Configuring Transactions
262(3)
JavaMail Support
265(3)
JavaMail Transports
265(1)
MailSession GBean
266(1)
Enabling JavaMail System Module via config.xml
266(1)
Reference to the Container-Managed JavaMail Session
267(1)
Linking to the Container-Managed JavaMail Session
267(1)
Working with the Database Connections Pool
268(6)
Trying Out the Example
272(2)
The Geronimo Client Container
274(1)
Summary
275(2)
Configuring and Deploying JDBC Resources with PostgreSQL
277(28)
Architecture
278(1)
Starting PostgreSQL
279(1)
J2EE Connector Architecture and JDBC Resources
280(1)
The Resource Adapter Archive
280(1)
Configuring JDBC Resources
281(8)
Creating a JDBC Deployment Plan for PostgreSQL
288(1)
Deploying JDBC Resources
289(8)
Using the Geronimo Deployer
290(1)
Using the Geronimo Console
291(6)
Additional Functionality in the Geronimo Console
297(1)
Highly Available PostgreSQL with Sequoia
297(6)
Configuring a Clustered PostgreSQL
299(1)
The Sequoia Configuration
300(3)
Deploying the Clustered PostgreSQL Deployment Plan
303(1)
Summary
303(2)
Deploying Web Services and CORBA Interoperation
305(32)
Web Services Fundamentals
306(5)
Anatomy of a Web Service
306(1)
XML, SOAP, and JAX-RPC
307(2)
Service Endpoint Interface (SEI)
309(1)
Web Services and Geronimo
310(1)
Example 1: Deploying a Web Service WAR on Geronimo
311(9)
The webservices.xml Web Service Deployment Descriptor
312(3)
The web.xml Deployment Descriptor for JAX-RPC Web Service
315(1)
Optional <service-ref> for Client Access to External Web Services
316(1)
Creating a Cross-Server-Compatible Web Service WAR
316(1)
Specifying the Context Root for the Web Service
317(1)
Deploying the Web Service
318(1)
Trying Out the Example with a Standalone Web Service Client
319(1)
Example 2: Deploying a Stateless Session EJB As a Web Service
320(4)
Adding the WSDL and JAX-RPC Mapping Files
321(1)
Configuring for EJB-Based Web Service Implementation
321(1)
Mapping a Session Bean to a Service Endpoint
322(1)
Providing a Deployment Context for the Web Service
323(1)
Trying Out the Example
323(1)
CORBA Concepts
324(5)
CORBA versus Web Services: Similar Yet Different
324(1)
Interface Definition Language
325(1)
ORB and CORBA Services
326(1)
GIOP and IIOP
327(1)
Simplifying Java-Based CORBA Interoperation
327(2)
Example 3: Exposing a Session EJB As a CORBA Component
329(7)
CORBA 2.3 Security
329(1)
Geronimo Support for CSIv2 Security
329(1)
Configuring Server-Side CSIv2 Security
330(1)
Configuring Client-Side CSIv2 Security
331(1)
CORBA Client Support
332(2)
Specifying Dependency on Parent Modules
334(1)
Configuring ORB Parameters via config.xml
335(1)
Trying Out the Example
335(1)
Summary
336(1)
Security
337(54)
Importance of a Security Subsystem
338(1)
Geronimo Security Architecture
338(7)
Authentication
339(1)
Authorization
339(1)
Security Realms and Login Domains
340(1)
JAAS Login Modules
341(1)
The GenericSecurityRealm
341(3)
Authorization and JACC
344(1)
Configuring JAAS Login Modules
345(28)
J2SE JAAS Login Modules Configuration
345(1)
Configuration JAAS Login Modules in Geronimo
346(6)
Login Modules
352(11)
Simplifying LoginModule Configuration with the xml-reference login-config
363(5)
Configuring Your Realm --- The Really Easy Way
368(5)
Deployment and the Server Security Plan
373(1)
Using Security in Applications
373(15)
Web Security
374(2)
EJB Security
376(2)
Security Descriptor and Declaration
378(10)
Locking Down Geronimo
388(1)
Summary
389(2)
Configuring, Deploying, and Using JMS Resources with Apache ActiveMQ
391(32)
The ActiveMQ Message Broker Architecture
391(2)
ActiveMQ Message Broker Configuration
393(13)
Customizing the Message Broker
397(4)
Deploying a Message Broker Configuration
401(4)
Managing ActiveMQ from the Geronimo Console
405(1)
The ActiveMQ Resource Adapter
406(1)
JMS Resources
406(1)
ActiveMQ Resource Adapter Configuration
407(15)
Deploying JMS Resources
413(2)
Creating JMS Resource Groups in the Geronimo Console
415(7)
Deployment Scope
422(1)
Summary
422(1)
Appendix A: Geronimo Deployment Plans Cross-Reference
423(12)
Deploying Web-Tier Applications --- geronimo-web.xml
424(2)
Reference Namespaces
424(1)
Top-Level Elements
424(2)
Deploying Business-Tier EJBs --- openejb-jar.xml
426(1)
Reference Namespaces
426(1)
Top-Level Elements
426(1)
Deploying EIS-Tier JCA connectors --- geronimo-ra.xml
427(2)
Reference Namespaces
428(1)
Top-Level Elements
428(1)
Deploying Enterprise Applications --- geronimo-application.xml
429(1)
Reference Namespaces
429(1)
Top-Level Elements
429(1)
Deploying J2EE Application Clients --- geronimo-application-client.xml
430(2)
Reference Namespaces
431(1)
J2EE Standard Specification Schemas for Deployment Descriptors
432(3)
Appendix B: Run-Time Deployer Command Reference
435(12)
The Command-Line Deployer
436(8)
Available Options
436(3)
Available Commands
439(5)
Deployment Using GUI Web Console
444(1)
Auto Deployment Using the Hot Deployer
445(2)
Index 447

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