JBoss 4.0.3RC1
The jboss-4.0.3RC1 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.
Release Notes
Highlights
- A new installer that allows for better control of configuration profile
has been created. Use of the installer is demonstrated in the
EJB3 Trailblazer.
- A preview of the latest ejb3 spec is included in the installer. For
a comprehensive tutorial of what ejb3 offers, see the
EJB3 Trailblazer.
- Bug fixes and feature enhancements as listed below
Feature Request
- [JBAS-1710] - twiddle: return non-zero code on error
- [JBAS-1836] - Support multithreaded use of the transaction
- [JBAS-1844] - ServiceMBeanSupport and duplicate logging
- [JBAS-1903] - Show Thread CPU utilization in ServerInfo
- [JBAS-1906] - Allow property references in the login-config.xml application-policy name attribute
- [JBAS-1944] - Add configuration name panel to installer
Bug
- [JBAS-1262] - MBean for ear not deregistered when deploy fails
- [JBAS-1319] - redeploy causes OutOfMemoryError
- [JBAS-1787] - Twiddle gives StreamCorruptionException when invoking custom MBeans
- [JBAS-1825] - Twiddle script fails with JAVA_HOME that contains a space
- [JBAS-1880] - Memory leak in ServiceController/ServiceMBeanSupport
- [JBAS-1892] - hajndi-jms-ds.xml uses the wrong connection factory binding
- [JBAS-1902] - Appclient teardown in the wrong place
- [JBAS-1910] - MessageReference leak in PersistentQueue if PersistenceManager throws an exception during add()
- [JBAS-1911] - MarshalledInvocation should not eat errors deserializing arguments
- [JBAS-1912] - Twiddle launch IOException when info command is used in Log4j service
- [JBAS-1913] - Selection of install group modifies other install groups
- [JBAS-1914] - Incomplete dependency list: uuid-key-generator
- [JBAS-1916] - TxUtils.isActive() does not perform the expected check.
- [JBAS-1918] - Incomplete dependency list: mail-service
- [JBAS-1919] - Incomplete dependency list: jms-socket-invoker
- [JBAS-1920] - Incomplete dependency list: jdbc-metadata-service
- [JBAS-1921] - jmx-invoker-service dependency list incomplete
- [JBAS-1927] - MySQLValidConnectionChecker broken -> NullPointerException
- [JBAS-1931] - installer minimal pack: no deploy directory created
- [JBAS-1947] - EJB3 profile needs Default Datasource
- [JBAS-1952] - Array Index Error in ObjectName pattern
- [JBAS-1954] - Installer EJB3 profile requires cglib
Task
- [JBAS-1899] - Farm deployment shouldn't read entire archive file into memory
Patch
- [JBAS-1464] - MBean for ear not deregistered when deploy fails
- [JBAS-1895] - [PATH] make JBoss JSR-88 consult by ModuleType and return parent and children TargetModuleID
Configuration Issues
Note that as of the 4.0.1 release, the distributed configurations have
switched back to the 3.2.x types of distribution configurations:
- minimal: a minimal microkernel with logging, JNDI and hot deployment
support
- default: a base level J2EE 1.4 application server configuration
- all: a full J2EE 1.4 server configuration with clustering and all
optional services
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:
- 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>
- 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>
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.