[jboss-user] [News & Announcements] - JBossAS 4.2.1.GA released

dimitris@jboss.org do-not-reply at jboss.com
Wed Jul 18 07:15:23 EDT 2007

JBoss Application Server 4.2.1.GA has been released and is available on Sourceforge

JBoss AS 4.2.1.GA Release Notes

This is the first bug fixing release of the JBoss Application Server v4.2 series. The aim of this release is to fix the most important bugs reported by the community against JBossAS v4.2.0.GA. There are a few minor components upgrades (Hibernate, JacORB, JBoss TS, JBoss Remoting and Sun JSF) but we have taken extra care for any changes to be fully backwards compatible, so you should be able to switch from 4.2.0 to 4.2.1 without problems. Check out the Detailed Release Notes section for the full details.

JBoss AS 4.2 is a stepping stone from JBoss 4.0 to JBoss 5.0. It combines a lot (but not all) of the exciting new features of JBoss 5, but based on the stable 4.x MicroKernel architecture.

JBoss AS 4.2 is also used as the basis for the JBoss Enterprise Application Platform. The Application Platform bundles JBoss AS and JBoss Seam  in a software package for which commercial support is offered by JBoss/Red Hat. Please read Sacha's blog if you are interested to learn more about the new development, distribution and support model for JBoss.

For information on the APIs that make up Java EE 1.4, see Java EE v1.4 Documentation. For a comprehensive tutorial on Java EE 1.4, see The Java EE? 1.4 Tutorial. A jboss-4.2.x getting started guide that is based on contents from the tutorial can be found in JBoss Application Server Documentation Library

Note: The 4.2.x release of the JBoss Application Server provides support for certain JavaEE5 features, such as EJB3, but it is not Java EE5 certified.

    * Highlights
    * Known Compatibility Issues
    * Known Configuration Issues
    * JBoss/Thirdparty Library Updates
    * Detailed Release Notes
    * Additional Docs and Help
    * Licenses
    * About JBoss

Highlights of JBoss AS 4.2 series

    * JDK5 is *required* to run JBossAS 4.2.x. The decision was based on the fact that JDK1.4 is phased out and the reality that a lot of people like Java Annotations support and want to combine EJB3 and JBoss Seam components with JBossAS. JDK6 is not formally supported yet, although you may be able to start the server with it. JDK6 support will come with JBossAS 5.x.
    * JBoss EJB3 is now deployed *by default* in JBossAS 4.2.x The fact that we base on JDK5 makes our life easier in this regard, meaning we don't have to maintain jdk5 code retro-weaved for jdk1.4 runtimes, and we can include by default components that require jdk5 to run.
    * JBoss Web v2.x is the web container in JBossAS 4.2, an implementation based on Apache Tomcat that includes the Apache Portable Runtime (APR) and Tomcat native technologies to achieve scalability and performance characteristics that match and exceed the Apache Http server. In the absence of the native libraries, JBoss Web falls back to the standard non-native connector mode. The native libraries need to be downloaded and installed separately in JBOSS_HOME/bin/native.
    * JBoss Transactions v4.2 is the default transaction manager for JBossAS 4.2. JBoss Transactions is founded on industry proven technology and 18 year history as a leader in distributed transactions, and is one of the most interoperable implementations available. The JTA version of JBoss Transactions included with the server provides for fully recoverable transactions. For distributed transaction support the JTS version of JBoss Transactions will need to be used. Furthermore, it is always possible to fall back to the legacy JBossTM fast in-memory transaction manager implementation, although it should be noted that JBoss TM will not be supported in future JBossAS versions.
    * JBoss WS is the web services stack for JBoss 4.2 providing Java EE compatible web services.
    * JGroups/JBossCache is already configured to support channel multiplexing, when it becomes available.
    * JBoss Remoting was upgraded to the latest stable 2.2.x version. This was done in order to align dependencies with the thirdparty libraries required by the new JBoss Messaging, which means that, if you want, you can replace the default JBossMQ messaging provider with JBoss Messaging, without having to revert to a scoped deployment.

Minor feature additions in 4.2.1.GA

    * LIMIT/OFFSET support in StoreManager2 (CMP), JBAS-4408.
    * detect collisions between JSF RI and JSF MyFaces, JBAS-3158.

Compatibility Issues
This lists the changes that could affect compatibility.

According to our product versioning rules, JBossAS 4.2.1 should be fully compatible with JBossAS 4.2.0. However you may want to check the release notes of the individual JBoss and Thirdparty libraries updated with this release. Some related issues that you should be aware of are listed below:
JBossAS 4.2.1.GA

    * JBoss TS, the new default transaction manager will not let you enlist multiple 1-phase participants in the same transaction. This was *not* the default behavior with the legacy JBoss TM that would log a warning and continue. There are good reasons for this change, mainly to avoid heuristic outcomes in the case of system crashes, which is the primary reason of using a transaction manager anyway! If your come across this problem you should try to fix it by switching to XA resources or implementing some form of compensating transactions. However, if this is not option and you are fully aware of the consequences you can override this behavior by setting com.arjuna.ats.jta.allowMultipleLastResources to true in conf/jbossjta-properties.xml. For more details read the wiki on Multiple1PC, or consult the JBoss Transactions documentation.
    * A major problem related to the cleaning up of threads after user transaction timeouts was corrected in JBAS-4481. If you happen to be using User Transactions make sure you follow the correct pattern for committing or rolling them back.
    * Another serious classloading issue that could lead to a hanging JBoss with a 100% CPU utilization was fixed with JBAS-4441.

JBossAS 4.2.0.GA

    * A JavaSE 5 runtime is required to run JBossAS 4.2. A full JDK with tools.jar support is no longer needed by jboss, since JBoss Web packages the eclipse JDT compiler for compiling JSP pages and javassist has its own internal compiler. JAVA_HOME can point to a JRE, JBAS-4161.
    * When compared to previous 4.0.x releases, the various JBoss APIs should be stable but backwards compatibility for individual component implementations may not be guaranteed, e.g. interoperating with another JBoss instance that uses an older version of JGroups.
    * Tomcat 6 is now bundled as part of JBoss Web. deploy/jbossweb-tomcat55.sar has been replaced by deploy/jboss-web.deployer.
    * conf/log4j.xml has been renamed to conf/jboss-log4j.xml, to allow log4j.properties override from scoped deployments, JBAS-1853.
    * log4j and commons-logging have both been upgraded. commons-logging is patched in addition, JBAS-2823.
    * Since the latest log4j includes a trace level, there is no need to reference the custom jboss TRACE level in conf/jboss-log4j.xml configs, JBAS-4163.
      Instead of: 
      you can use: 
    * Better integration with WebSphere MQ 5.x, JBAS-3183.
    * The MyFaces JSF implementation has been replaced by the Glassfish JSF 1.2 one, JBAS-3897.
    * Hibernate, hibernate-annotations and hibernate-entity-manager have all been upgraded. to v3.2.1.
    * The default invoker for EJBs has been changed from the rmi-invoker to the unified-invoker, provided by JBoss Remoting, JBAS-3950.
    * Apache commons http-client and apache-codec were removed from jbossall-client.jar, JBAS-4365.
    * The address that is stored in the host portion of the RMI codebase URL can now be set correctly, JBAS-3325.
    * The java2ClassLoadingCompliance setting in jboss-web.xml was ignored; this has been fixed, JBAS-3047.
    * In JBoss 4.2 the unified invokers based on JBoss Remoting are the default transport for accessing EJBs. Using the unified invokers JBoss 4.2 can interoperate safely with JBoss AS 4.0.4.GA/4.0.5.GA, using the flag -Djboss.remoting.pre_2_0_compatible=true on the JBoss 4.2.x side. For interoperating with older JBoss AS versions (3.2.8.SP1 to 4.0.3.SP1) the legacy rmi or pooled invokers need to be used. See JBAS-4407 and the wiki page on JBoss Version Compatibility.

Configuration Issues
This lists the changes that could affect configuration.
JBossAS 4.2.1.GA

    * %PATH% is not removed from java.library.path in the presence of JAVA_HOME/bin/native, so e.g. native jdbc drivers can be loaded, JBAS-4418.

JBossAS 4.2.0.GA

    * JBossAS now binds its services to localhost ( *by default*, instead of binding to all available interfaces ( This was primarily done for security reasons because of concerns of users going to production without having secured their servers properly. To enable remote access by binding JBoss services to a particular interface, simply run jboss with the -b option. To bind to all available interfaces and re-enable the legacy behaviour use -b In any case, be aware you still need to secure you server properly.
    * There now distinct properties to configure the various mcast ports, JBAS-4021.
    * When running under Linux, run.sh forces the use of IPv4, due to a jdk bug, JBAS-4332.
    * JBoss EJB3 is now included by default. If you don't need/want EJB3 support, simply remove deploy/ejb3.deployer.
    * When using native libraries for JBoss Web store them in JBOSS_HOME/bin/native, which is automatically included in the classpath, JBAS-4162.
    * JBoss Transactions is the new default transaction manager in JBoss. It is configured in conf/jboss-service.xml and has additional properties defined in conf/jbossjta-properties.xml. The transaction log is stored by default at server/default/data/tx-object-store.
    * If you are on Red Hat Linux, check out the changes in bin/jboss_init_redhat.sh, JBAS-4041.
    * The JBossAS distributions usually include the installer (.jar), the sources (.tar.gz) and the canonical binary release (.zip). Unzipping the binary distribution (.zip) with a native unzip utility will restore correctly the executable permission in the /bin/*.sh files. However, unzipping using the JDK jar utility ignores the executable bit, so this need to be set manually.
    * bin/shutdown.sh no longer sources run.conf, JBAS-4155.

Library Updates
The library updates reported in this section are against JBossAS 4.2.0.GA For a full list of the JBoss and thirdparty libraries used with JBoss AS 4.2.1 checkout  the build-thirdparty.xml.
JBoss Library Updates

    * hibernate, upgraded to v3.2.4.SP1_CP01 (from v3.2.3.GA)
    * jboss-ts14, upgraded to v4.2.3.SP5 (from v4.2.3.SP3)
    * jboss-remoting, upgraded to v2.2.1.GA (from v2.2.0.SP4)

Thirdparty Library Updates

    * jacorb, upgraded to v2.3.0jboss.patch4 (from v2.2.4jboss.patch1)
    * sun-jsf, upgraded to v1.2_04_P02 (from v1.2_04_P01)

Detailed Release Notes
Includes versions: JBossAS-4.2.1.GA
Feature Request

    * [JBAS-3158] - Need a way to detect collisions between JSF RI and JSF MyFaces
    * [JBAS-4408] - LIMIT/OFFSET support in StoreManager2
    * [JBAS-4454] - Upgrade to JSF RI 1.2_04 P02


    * [JBAS-4415] - ClusterFileTransferTestCase.testFarmDeploy fails to delete and copy
    * [JBAS-4418] - run.bat should include %PATH% in java.library.path when bin/native exists
    * [JBAS-4425] - ConnectionFactoryTemplate.xsl incorrectly sets isSameRM-override-value
    * [JBAS-4427] - Misnamed FK index name for CMP2
    * [JBAS-4429] - Classloader leak to JBossTS ReaperThread
    * [JBAS-4441] - Jboss hangs at startup with 100% CPU utilization
    * [JBAS-4444] - The invoker-proxy-binding in the base container configuration is ignored on sub-configurations.
    * [JBAS-4461] - new InitialContext().rebind("x", null) throws NullPointerException
    * [JBAS-4462] - mod() function not supported in SQL server 2005
    * [JBAS-4473] - Java to IDL mapping erroneously treats a 'get' method as an attribute
    * [JBAS-4481] - Transaction timeouts leave garbage Status.ROLLEDBACK UserTransaction object bound to the thread


    * [JBAS-4198] - Align EJB3 Security with JEE 1.4 Behavior
    * [JBAS-4420] - Separate classloader leak tests from the 'all' tests
    * [JBAS-4442] - Need to update exception handling code in HypersonicDatabase.java
    * [JBAS-4467] - Document in the release notes a configuration for multiple 1PC with JBossTS
    * [JBAS-4480] - Upgrade hibernate to v3.2.4.SP1_CP01
    * [JBAS-4482] - Add compatibility runs against 4.2.0.GA in Branch_4_2
    * [JBAS-4503] - Update the release notes for JBossAS 4.2.1.GA
    * [JBAS-4510] - Upgrade jboss remoting to v2.2.1.GA (from v2.2.0.SP4)

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4065334#4065334

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4065334

More information about the jboss-user mailing list