Chapter 2. Feature Requests

Feature requests in JBoss Enterprise Application Platform 5.2.0 are listed by component.

The TCPPING configuration in JGroups had to statically define the list of all possible cluster members. Consequently, the cluster had to be restarted if a new member was added. The max_dynamic_hosts property has been added to TCPPING which defines the number of extra hosts to be added dynamically to the cluster without the need to restart the cluster. Therefore, it is now possible to add new members to the cluster when using TCPPING without requiring the cluster restart. The property default value is 0. Note that the new nodes need to be added statically to each node's configuration at the next restart of that node.
When JGroups caught an IOException while creating server sockets, the root exception was hidden and not included in the thrown exception. This way, users could not identify the cause of the error that occurred. The root exception is now included in the thrown exception so that users can identify the root cause of the error.
When a cluster member does not respond before timeout, other members can fail to join the cluster. Previously, in this case, the logs contained only an entry about the timeout event that occurred while waiting for responses from the cluster ("GMS flush by coordinator at <ip_address>:<port> failed ") and did not report which members were not present in the cluster. Now, the log level of this event was changed from DEBUG to WARN, and the log event contains a list of the missing cluster members to allow easier troubleshooting.

The Installation Guide did not explicitly state that the latest security patches should be applied immediately after installation. This has now been added to the guide immediately following the installation instructions.
The Getting Started Guide has been restructured and simplified.
Information about how to enable LDAP integration with JBossWS has been added to the WS CXF User Guide book.
A section describing RoleMappingLoginModule and its configuration options has been added to the Security Guide.
Information on how to remove jsessionid numbers from an application's URL has been added to the Administration and Configuration Guide.

The messages export tool has been rewritten to support large messages in HornetQ. It can now export and import both the journal and large messages' content.

The JMS Java Connection Architecture's Resource Adapter has been enhanced to support javax.jms.ConnectionFactory and javax.jms.XAConnectionFactory.

Scripts and Commands
The, jarcheck.bat and jarcheck.jar scripts have been added to the JBOSS_HOME/bin directory. These scripts collect MD5 checksums of system JAR files to identify which of them have been changed after installation.
JBoss Enterprise Application Platform attempted to load a per-profile run.conf file from the default location in $JBOSS_HOME/server/$PROFILE. Consequently, per-profile run.conf files stored in a different location were not loaded. The --run-conf=... option (on Windows: -r) has been added to the script, allowing to specify the location of the run.conf file that sould be used. Using this option, per-profile run.conf files stored in another than the default location can now be loaded correctly.

An enhancement has been made to JBoss Negotiation when configured as an authentication source. If a client authenticates to the server using a forwardable Kerberos ticket then the client's credentials can be accessed on the server using the JBoss Negotiation API and used for further calls (delegation using GSSAPI, WS-Kerberos, credential propagation for EJB calls, etc.).
Exposing the keystore or truststore password in JaasSecurityDomain is insecure. The getKey and getCertificate methods have been added to retrieve private keys and certificates directly from the JSD so that they can be used by external components. The getKey method requires you to provide a security token.

Web Services
In certain scenarios, JBossWS sends a large number of small packets over the network instead of sending a smaller number of larger packets. The following system property has been introduced in this release:
If the value of the property is set to true, the size of packets sent over the network is increased and their number reduced.
JBossWS-CXF is used as the native stack for rewriting the soap:address values in WSDL definitions, except when a jbossws-cxf.xml file is provided in the web service's deployment. This enhancement allows the use of JBossWS-CXF even with the jbossws-cxf.xml file, by providing CXF-specific configuration in the file.
Web Services have been enhanced to allow wrapped style code generation with the xsd:extension of a wrapper-compatible type.