JBoss 4.0: The Official Guide

Paperback
from $0.00

Author: Marc Fleury

ISBN-10: 0672326485

ISBN-13: 9780672326486

Category: Enterprise Application Development & Integration

If you need to understand how JBoss works, why not learn it from the people who created it? JBoss 4.0 — The Official Guide is the authoritative resource recognized as the official print documentation for JBoss 4.0. The only book for advanced JBoss users, this guide presents a complete understanding to configuring and using JBoss 4.0. It is fully up-to-date with the new features and changes in JBoss 4.0, including those used to integrate development with Eclipse, incorporate Aspect-Oriented...

Search in google:

If you need to understand how JBoss works, why not learn it from the people who created it? JBoss 4.0 — The Official Guide is the authoritative resource recognized as the official print documentation for JBoss 4.0. The only book for advanced JBoss users, this guide presents a complete understanding to configuring and using JBoss 4.0. It is fully up-to-date with the new features and changes in JBoss 4.0, including those used to integrate development with Eclipse, incorporate Aspect-Oriented Programming and implement J2EE 1.4 functionality months ahead of the commercial competition. Get under the hood and explore everything that JBoss 4.0 can offer you with JBoss 4.0 — The Official Guide.

IntroductionIntroductionWhat This Book Covers\ The primary focus of this book is the presentation of the standard JBoss 4.0 architecture components, from the perspectives of both their configuration and architecture. As a user of a standard JBoss distribution, you will gain an understanding of how to configure the standard components. Note that this book is not an introduction to J2EE or how to use J2EE in applications. It focuses on the internal details of the JBoss server architecture and how an implementation of a given J2EE container can be configured and extended.\ As you read this book, you will gain a good understanding of the architecture and inte-gration of the standard components, which should enable you to extend or replace the standard components for your infrastructure needs. This book also shows you how to obtain the JBoss source code, along with how to build and debug the JBoss server.About JBoss\ JBoss Application Server was first released in 1999. JBoss Group was founded in 2001, in order to provide expert technical support services. JBoss Group was incorporated in 2004 as JBoss Inc.:\ \ \ Ownership—JBoss Inc. is employee owned and is venture backed by Matrix Partners, Accel Partners, and Intel.\ \ \ Coverage—JBoss Inc. covers North America and Europe on a direct basis. JBoss Inc. provides coverage worldwide via its extensive authorized partner network.\ \ \ Mission statement—JBoss Inc. will provide middleware technology that offers the lowest cost of ownership via open-source software licenses that are backed up by expert technical support services delivered by both JBoss Inc. and our authorizedservice partners. Our goal is to be the safe choice for enterprises and software providers alike.\ \ \ Company description—JBoss Inc. is in the business of providing superior technical support to its customers. By backing up its immensely popular open-source Java products with technical support from the source, JBoss has become the new safe choice for middleware. Customers such as Apple, Best Western, Borland, Computer Associates, HP, Iona, La Quinta, MCI, Mitre, Nielsen Media Research, Siemens, Sonic, SEMA, Unisys, WebMethods, and Wells Fargo have embraced the Professional Open Source model whereby no-cost, open-source products are supported by the core development team. By providing direct access to the core developers, JBoss Inc. eliminates the runaround common with most commercial software providers.\ \ \ Professional Open Source from JBoss Inc. offers the following:\ \ \ Standards-based and stable Java middleware technology\ \ \ No-cost, open-source product licenses\ \ \ Backing by a professional and expert support staff\ \ \ Comprehensive services, including professional support, training, and consulting\ \ \ A very large and active community of developers\ \ \ An extensive worldwide network of authorized and certified partners\ \ \ Benefits of Professional Open Source from JBoss Inc. include the following:\ \ \ Lowest possible total cost of ownership\ \ \ Reliable and safe technology\ \ \ Support, accountability, and trust from a stable company\ \ \ Expedited problem resolution compared to commercial software vendors\ \ \ About Open Source\ The basic idea behind open source is very simple: When programmers can read, re- distribute, and modify the source code for a piece of software, the software evolves: People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if you are used to the slow pace of conventional software development, seems astonishing. Open source is an often-misunderstood term that relates to free software. The Open Source Initiative (OSI) website provides a number of resources that define the various aspects of open source, including a definition of open source at http://www.opensource.org/docs/definition.html. The following quote from the OSI home page nicely summarizes the key aspects as they relate to JBoss:\ \ We in the open source community have learned that this rapid evolutionary process produces better software than the traditional closed model, in which only a very few programmers can see the source and everybody else must blindly use an opaque block of bits.\ Open Source Initiative exists to make this case to the commercial world.\ Open source software is an idea whose time has finally come. For twenty years it has been building momentum in the technical cultures that built the Internet and the World Wide Web. Now it's breaking out into the commercial world, and that's changing all the rules. Are you ready?\ —The Open Source Initiative

Introduction.1. Installing and Building the JBoss Server.Getting the Binary FilesPrerequisitesInstalling the Binary PackageDirectory StructureThe Default Server Configuration File Setconf/jboss-minimal.conf/jboss-service.conf/jboss.webconf/jndi.propertiesconf/log4j.conf/login-config.conf/server.policyconf/standardjaws.conf/standardjboss.conf/standardjbosscmp-jdbc.conf/xmdesc/-mbean.deploy/bsh-deployer.deploy/cache-invalidation-service.deploy/client-deployer-service.deploy/ear-deployer.deploy/ejb-deployer.deploy/hsqldb-ds.deploy/http-invoker.sardeploy/jboss-aop.deployerdeploy/jboss-hibernate.deployerdeploy/jboss-local-jdbc.rardeploy/jboss-ws4ee.sardeploy/jboss-xa-jdbc.rardeploy/jbossjca-service.sardeploy/jbossweb-tomcat50.sardeploy/jms/hsqldb-jdbc2-service.deploy/jms/jbossmq-destinations-service.deploy/jms/jbossmq-httpil.sardeploy/jms/jbossmq-service.deploy/jms/jms-ds.deploy/jms/jms-ra.rardeploy/jms/jvm-il-service.deploy/jms/uil2-service.deploy/jmx-console.wardeploy/jmx-invoker-service.sardeploy/mail-ra.rardeploy/mail-service.deploy/management/console-mgr.sar and web-console.wardeploy/monitoring-service.deploy/properties-service.deploy/scheduler-service.deploy/sqlexception-service.deploy/uuid-key-generator.sarBasic Installation TestingBooting from a Network ServerBuilding the Server from Source CodeAccessing the JBoss CVS Repositories at SourceForgeUnderstanding CVSAnonymous CVS AccessObtaining a CVS ClientBuilding the JBoss Distribution Using the Source CodeBuilding the JBoss Distribution Using the CVS Source CodeAn Overview of the JBoss CVS Source TreeUsing the JBossTest Unit Testsuite2. The JBoss JMX Microkernel.JMXAn Introduction to JMXThe JBoss JMX Implementation ArchitectureThe JBoss ClassLoader ArchitectureClass Loading and Types in JavaJBoss XMBeansConnecting to the JMX ServerInspecting the Server: The JMX Console Web ApplicationConnecting to JMX Using RMICommand-Line Access to JMXConnecting to JMX Using Any ProtocolUsing JMX as a MicrokernelThe Startup ProcessJBoss MBean ServicesWriting JBoss MBean ServicesDeployment Ordering and DependenciesThe JBoss Deployer ArchitectureDeployers and Class LoadersExposing MBean Events via SNMPThe Event to Trap ServiceRemote Access to Services, Detached InvokersA Detached Invoker Example: The MBeanServer InvokerAdaptor ServiceJRMPInvoker: RMI/JRMP TransportPooledInvoker: RMI/Socket TransportIIOPInvoker: RMI/IIOP TransportJRMPProxyFactory: Building Dynamic JRMP ProxiesHttpInvoker: RMI/HTTP TransportJRMPInvoker: Clustered RMI/JRMP TransportHttpInvoker: Clustered RMI/HTTP TransportHttpProxyFactory: Building Dynamic HTTP ProxiesSteps to Expose Any RMI Interface via HTTP3. Naming on JBoss.An Overview of JNDIThe JNDI APIJ2EE and JNDI: The Application Component EnvironmentThe JBossNS ArchitectureThe Naming InitialContext FactoriesAccessing JNDI over HTTPAccessing JNDI over HTTPSSecuring Access to JNDI over HTTPSecuring Access to JNDI with a Read-only Unsecured ContextAdditional Naming MBeans4. Transactions on JBoss.Transaction and JTA OverviewPessimistic and Optimistic LockingThe Components of a Distributed TransactionThe Two-phase XA ProtocolHeuristic ExceptionsTransaction Identities and BranchesJBoss Transaction InternalsAdapting a Transaction Manager to JBossThe Default Transaction ManagerUserTransaction Support5. EJBs on JBoss.The EJB Client-Side ViewSpecifying the EJB Proxy ConfigurationThe EJB Server-Side ViewDetached Invokers: The Transport MiddlemenThe HA JRMPInvoker: Clustered RMI/JRMP TransportThe HA HttpInvoker: Clustered RMI/HTTP TransportThe EJB ContainerThe EJBDeployer MBeanThe Container Plug-in FrameworkEntity Bean Locking and Deadlock DetectionWhy JBoss Needs LockingThe Entity Bean Life CycleDefault Locking BehaviorPluggable Interceptors and Locking PolicyDeadlockingAdvanced Configurations and OptimizationsRunning Within a ClusterTroubleshooting6. Messaging on JBoss.JMS ExamplesA Point-to-Point ExampleA Pub-Sub ExampleAn Example of a Pub-Sub with a Durable TopicAn Example of P2P with MDBJBossMQ OverviewThe Invocation Layer ServicesThe SecurityManager ServiceThe DestinationManager ServiceThe MessageCache ServiceThe StateManager ServiceThe PersistenceManager ServiceDestinationsJBossMQ Configuration and MBeansThe org.jboss.mq.il.jvm.JVMServerILService MBeanThe org.jboss.mq.il.uil2.UILServerILService MBeanThe org.jboss.mq.il.http.HTTPServerILService MBeanThe org.jboss.mq.server.jmx.Invoker MBeanThe org.jboss.mq.server.jmx.InterceptorLoader MBeanThe org.jboss.mq.sm.jdbc.JDBCStateManager MBeanThe org.jboss.mq.security.SecurityManager MBeanThe org.jboss.mq.server.jmx.DestinationManager MBeanThe org.jboss.mq.server.MessageCache MBeanThe org.jboss.mq.pm.jdbc2.PersistenceManager MBeanDestination MBeansSpecifying the MDB JMS ProviderThe org.jboss.jms.jndi.JMSProviderLoader MBeanThe org.jboss.jms.asf.ServerSessionPoolLoader MBeanIntegrating Non-JBoss JMS Providers7. Connectors on JBoss.JCA OverviewAn Overview of the JBossCX ArchitectureThe BaseConnectionManager2 MBeanThe RARDeployment MBeanThe JBossManagedConnectionPool MBeanThe CachedConnectionManager MBeanA Sample Skeleton of a JCA Resource AdaptorConfiguring JDBC DatasourcesConfiguring Generic JCA Adaptors8. Security on JBoss.J2EE Declarative Security OverviewSecurity ReferencesSecurity IdentitySecurity RolesEJB Method PermissionsWeb Content Security ConstraintsEnabling Declarative Security in JBossAn Introduction to JAASWhat Is JAAS?The JBoss Security ModelEnabling Declarative Security in JBoss, RevisitedThe JBossSX ArchitectureHow JaasSecurityManager Uses JAASThe JaasSecurityManagerService MBeanThe JaasSecurityDomain MBeanAnThe JAAS Login Configuration Management MBeanUsing and Writing JBossSX Login ModulesThe DynamicLoginConfig ServiceThe Secure Remote Password (SRP) ProtocolProviding Password Information for SRPInside the SRP AlgorithmRunning JBoss with a Java 2 Security ManagerUsing SSL with JBoss and JSSEConfiguring JBoss for Use Behind a FirewallSecuring the JBoss ServerThe jmx-console.war ServiceThe web-console.war ServiceThe http-invoker.sar ServiceThe jmx-invoker-adaptor-server.sar Service9. Web Applications.The Tomcat ServiceThe Tomcat server.The Connector ElementThe Engine ElementThe Host ElementThe DefaultContext ElementThe Logger ElementThe Valve ElementUsing SSL with the JBoss/Tomcat BundleSetting the Context Root of a Web ApplicationSetting Up Virtual HostsServing Static ContentUsing Apache with TomcatUsing ClusteringIntegrating Third-Party Servlet ContainersThe AbstractWebContainer Class10. MBean Services Miscellany.System Properties ManagementProperty Editor ManagementServices Binding ManagementScheduling TasksThe org.jboss.varia.scheduler.Scheduler MBeanThe Log4j Service MBeanRMI Dynamic Class Loading11. The CMP Engine.Example CodeEnabling CMP Debug LoggingRunning the ExamplesThe jbosscmp-jdbc StructureEntity BeansEntity MappingCMP FieldsCMP Field DeclarationCMP Field Column MappingRead-only FieldsAuditing Entity AccessDependent Value ClassesContainer-Managed RelationshipsCMR-field Abstract AccessorsRelationship DeclarationRelationship MappingDeclaring QueriesDeclaring Finders and SelectsDeclaring EJB-QL QueriesOverriding the Mapping of EJB-QL to SQLJBossQLDynamicQLDeclaredSQLEJB-QL 2.1 and SQL92 QueriesBMP Custom FindersOptimized LoadingA Loading ScenarioLoad GroupsRead-aheadThe Loading ProcessCommit OptionsThe Eager-Loading ProcessThe Lazy-Loading ProcessLazy-Loading Result SetsTransactionsOptimistic LockingEntity Commands and Primary Key GenerationExisting Entity CommandsJBoss Global DefaultsA Sample jbosscmp-jdbc.Datasource CustomizationType MappingFunction MappingMappingUser Type Mappings12. Web Services.JAX-RPC Service EndpointsEnterprise JavaBean EndpointsWeb Services Clients-A JAX-RPC ClientService References13. Hibernate.The Hibernate MBeanHibernate ArchivesUsing Hibernate ObjectsUsing a HAR File Inside an EAR FileThe HAR Deployer14. Aspect-Oriented Programming (AOP) Support.JBoss AOP: EJB-Style Services for Plain Java ObjectsWhy AOP?Basic Concepts of AOPJoinpoints and InvocationAdvice and AspectsIntroducing PointcutsIntroductions and MixinsBuilding JBoss AOP ApplicationsCompiling to BytecodeCompiling AnnotationsAOP InstrumentationThe JBoss AOP DeployerInstalling the Latest jboss-aop.deployer ServiceConfiguring the AOP ServiceThe Prepackaged Aspects LibraryPackaging and Deploying AOP Applications to JBossUsing Prepackaged AspectsDeveloping Your Own AspectsPackaging and Deploying Custom AspectsAppendix A. The GNU Lesser General Public License (LGPL).GNU General Public LicensePreambleTerms and Conditions for Copying, Distribution, and ModificationHow to Apply These Terms to Your New ProgramsAppendix B. Example Installation.Index.