JBoss Inc.

JBoss 4.0.1

The jboss-4.0.1 final release for the J2EE™ 1.4 codebase. For information on the APIs that make up J2EE 1.4, see J2EE v1.4 Documentation. For a comprehensive tutorial on J2EE 1.4, see The J2EE™ 1.4 Tutorial. A jboss-4.0.x getting started guide that is based on contents from the tutorial can be found on the JBoss web site documentation section, 4.0 Getting Started Guide.

Change Notes

The change note overviews and details are found on sourceforge. The key change notes for the 4.0.1 release are:

Note that this distribution has switched back to the 3.2.x types of distribution configurations:

The standard configuration from the 4.0.0-4.0.1RC1 releases has been dropped and the default flat class loading model from 3.0.x-3.2.x has been restored for the default configuration. This change in behavior was done to restore consistency with the 3.2.x class loading model. The 4.0.0 scoped class loading behavior and call by value JNDI lookup behavior can be restored by:

  1. Editing conf/jboss-service.xml and setting the NamingService CallByValue to true:
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming">
          <!-- The call by value mode. true if all lookups are unmarshalled using
          the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">true</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
            to run the NamingService without the JNP invoker listening port.
          -->
          ...
       </mbean>
    
  2. Editing the deploy/ear-deployer.xml and setting the Isolated and CallByValue attribute to true:
    <server>
       <!-- EAR deployer, remove if you are not using ear deployments -->
       <mbean code="org.jboss.deployment.EARDeployer"
          name="jboss.j2ee:service=EARDeployer">
          <!-- A flag indicating if ear deployments should have their own scoped
          class loader to isolate their classes from other deployments.
          -->
          <attribute name="Isolated">true</attribute>
          <!-- A flag indicating if the ear components should have in VM call
          optimization disabled.
          -->
          <attribute name="CallByValue">true</attribute>
       </mbean>
    </server>
    
  3. Editing the deploy/jbossweb-tomcat50.sar/META-INF/jboss-service.xml and set the Java2ClassLoadingCompliance and UseJBossWebLoader attributes to false:
  4. <server>
    
       <mbean code="org.jboss.web.tomcat.tc5.Tomcat5"
          name="jboss.web:service=WebServer">
    
          <!-- Get the flag indicating if the normal Java2 parent first class
               loading model should be used over the servlet 2.3 web container first
               model.
          -->
          <attribute name="Java2ClassLoadingCompliance">false</attribute>
    
          <attribute name="LenientEjbLink">true</attribute>
    
          <!-- A flag indicating if the JBoss Loader should be used. This loader
               uses a unified class loader as the class loader rather than the tomcat
               specific class loader.
          -->
          <attribute name="UseJBossWebLoader">false</attribute>
    
    Note that jboss-4.0.0 had Java2ClassLoadingCompliance=true and UseJBossWebLoader=false which means that wars did not load from classes from the war preferentially so it was not being scoped.

Documentation and Help

Documentation and help may be obtained from the JBoss site.

Licenses

JBoss is licensed under the LGPL. The licence texts for JBoss and the thirdparty components it uses may be found in the docs/licenses directory of the distribution. Browse Licences

About JBoss Inc.

JBoss Inc. is in the business of providing superior technical support to our customers. Our goal is to make Professional Open Source™ the SAFE CHOICE for you. We accomplish this by backing up our open source Java products with technical support services that are delivered by the core developers themselves. We can help you to train your staff and provide you with support at every stage of the application lifecycle - from development and integration through deployment and maintenance. Visit the JBoss Services page for more information.