JBoss Overview - PowerPoint PPT Presentation


PPT – JBoss Overview PowerPoint presentation | free to download - id: 21c9fe-ZDc1Z


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation

JBoss Overview


JBoss - The Main Modules and their Layout. Startup Issues - How to spot them. ... A) Flakily, especially depending on which build you have - In all cases, no ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 21
Provided by: java8
Learn more at: http://javamug.org


Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: JBoss Overview

JBoss Overview
J2EE Sig Presenter Steve Davidson Stephen
Davidson Associates, INC.
JBoss Overview
  • JBoss - The Main Modules and their Layout
  • Startup Issues - How to spot them.
  • JMX-Console - The Management Console
  • Ant XDoclet - What are they and why?

JBoss -The Main Modules and their Layout
  • JMX - Used for control of JBoss
  • JAAS - Used for Internal and Module Security
  • JCA - Used for Database Connectivity
  • JNDI - Generally used to access all of the above
  • JETTY - The default WebServer/Servlet container
  • JBossMQ - The JMS Server
  • EJB 2.0 - The advantages of CMP

JMX -Java Management Extensions
  • Specification handled by JSR-077
  • Implemented via MBeans
  • Configured using -service.xml
  • In JBoss, can be monitored using JMX-Console
    (discussed later).
  • Can be bundled into .sar files (Service
    Application Resource)

JMX -Java Management Extensions From JBoss
QuickStart, Chapter 12
Almost everything important in JBoss is an MBean,
such as EJBs, the Naming Service, Resource
Adapters, etc. Most of these (except, as of now,
EJBs) are configured through jboss-specific xml
deployment descriptors in -service.xml files.
These may be packed with the classes they need in
a sar (service archive) or deployed separately.
...Two types of dependency management between
MBeans, and between an MBean and its class.
JAAS -Java Authentication Authorization Security
  • Specification Handled by the JAAS JSR.
  • Defaults are configured in conf/login-config.xml
  • Can be tied into LDAP, or Databases, via JCA.
  • Implemented via JBossSX
  • Note JCA Realms need to be configured here as

JCA - Java Connector Archictecture
  • Controlled by MBeans
  • -service.xml files for configuration of JCA.
  • Can be used to connect to databases, legacy
    systems, other systems, etc.
  • Most Databases do not provide JCA Adapters, so
    generally JCA-Wrappers of JDBC drivers are used.
  • Samples for popular databases -docs/examples/jca
    (NOTE Not always properly maintained!)

JNDI -Java Naming Directory Interface
  • JBossNS Module
  • Implements v1.2.1
  • Managed by org.jboss.naming.NamingService Mbean.
  • conf/jboss-service.xml
  • Just about everything in JBoss has a handle
    stored in the JNDI tree
  • either it should not be accessed by an outside
    entity, or it will have a handle here shortly if
    it doesn't already.

Startup Issues
  • What happens when something fails to deploy?
  • Where to look for explanations
  • Q) How well does JBoss handle things failing
    during Deploy?
  • A) Flakily, especially depending on which build
    you have - In all cases, no application start,
    and in many cases, no JMX-Console.

JETTY -Fast, Small, and Powerful
  • The webserver and Servlet Container for JBoss
  • Port for PDA's (specifically Zaurus) exists.
  • Compliant to the HTTP1.1, Servlet 2.3 JSP 1.2
  • Fully integrated with JBoss
  • In-JVM optimized calls
  • Jetty integration extends the org.jboss.web.Abstra
  • JBossSX integration, allowing simple and form
    based authentication across the entire JBossSX

JETTY -Fast, Small, and Powerful (continued)
  • GOTCHA No Default deployment, so until an app is
    deployed, it serves 404s.
  • Until page defined as root, 404s
  • Configured via jboss-service.xml
  • Two versions -
  • conf/jboss-service.xml
  • Read only during JBoss Startup
  • deploy/jbossweb.sar/META-INF/jboss-service.xml
  • Unpacked during deploy, an update forces JETTY to
  • Clusterable (Rapidly improving - based on
    Stateful Session EJBs)

JBossMQ -The Java Messaging Server for JBoss
  • JMS 1.0.2b compliant
  • ConnectionFactory handle stored in JNDI
  • Managed by the JMX Mbean
  • Supports MDBs (which are very useful for
    asynchronous and background processing)
  • Default configurations deploy/jbossmq-destination
  • Autoconfigures for application specific MDBs,
    Queues, and Topics via the appropriate entries in
    descriptor XML files.

EJB 2.x - Why?
  • EJB 2.0 CMP is very improved over 1.x
  • Container is optimizing database access (for
    properly configured beans).
  • Currently in general about as fast and efficient
    as BMP access
  • As containers improve, so does access speed
  • Coupled with JMS, you can make an effective home
    made distributed Entity EJB. (Hint Make the
    Entities Topic Listeners)

EJB 2.x - Why? (continued)
  • EJB QL based on SQL, very similar syntax.
  • Container handles the relational mapping.
    Especially useful for databases that do not
    necessary support n-m relations
  • Look ahead and relational loads much improved
    from 1.x days
  • More improvements on the way (do you really want
    to refactor all your code, or let someone else do
    the work?)

EJB 2.x - Why? (continued)
  • For more information, see Chapter 11 of the
    Enterprise JavaBeans Specification Version 2.0
    Final Release or one of the many excellent
    articles written on CMP 2.0.

  • Accessed by http//localhost8080/jmx-console
  • Lists all deployed MBeans, including the ones for
    application's EJB(s).
  • JNDI MBean, which can be used to view JNDI tree
  • Can bring JBoss down
  • Can deploy EAR file, or check to see if EAR

Ant XDoclet
  • Used by majority of large Java projects
  • Parses XML "build" file
  • Generally acts on directories and subdirectories
  • Easy to use
  • Task based
  • XDoclet - Integrated with ANT
  • XDoclet - Parses JavaDocs for "Xdoclet" tags, and
    builds Home, Remote, LocalHome, and LocalRemote
    interfaces for EJBs.

Other Useful Modules
  • Jboss.NET
  • Based on Apache AXIS JAX-RPC
  • JBoss/Weblogic Integration (Allows JBoss to read
    Weblogic Descriptor files)
  • Clustering
  • LoadBalancing (Intrinsic to the EJBs)
  • UCL - Unified ClassLoader -
  • Useful for Highload applications when being
    "bitten" by Sun's Classloader Deadlock bug
  • Somebody made a Swing Front-End!

Useful Resources
  • JBoss 3.0 Quick Start (_at_http//www.jboss.org -
    see "Getting Started")
  • WARNING Some of it is out of date - Caution
  • Jetty website (http//jetty.mortbay.org)
  • jetty.mortbay.com/jetty/doc/ JettyWithApache.html
  • JBoss Forums (_at_jboss.org)
  • Mailing lists (_at_sourceforge)
  • Newsgroups (in progress)
  • Online User docs (_at_jboss.org)

Questions and Answers
About PowerShow.com