JBoss Enterprise Web Server 2

2.0.0 Release Notes

Release Notes for JBoss Enterprise Web Server 2.0.0

Edition 2

Misha Husnain Ali

Legal Notice

Copyright © 2011 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack Logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.

Abstract

These release notes contain important information related to JBoss Enterprise Web Server 2.0.0. Read these Release Notes in their entirety before installing JBoss Enterprise Web Server 2.0.0.

Preface

1. Document Conventions

This manual uses several conventions to highlight certain words and phrases and draw attention to specific pieces of information.
In PDF and paper editions, this manual uses typefaces drawn from the Liberation Fonts set. The Liberation Fonts set is also used in HTML editions if the set is installed on your system. If not, alternative but equivalent typefaces are displayed. Note: Red Hat Enterprise Linux 5 and later include the Liberation Fonts set by default.

1.1. Typographic Conventions

Four typographic conventions are used to call attention to specific words and phrases. These conventions, and the circumstances they apply to, are as follows.
Mono-spaced Bold
Used to highlight system input, including shell commands, file names and paths. Also used to highlight keys and key combinations. For example:
To see the contents of the file my_next_bestselling_novel in your current working directory, enter the cat my_next_bestselling_novel command at the shell prompt and press Enter to execute the command.
The above includes a file name, a shell command and a key, all presented in mono-spaced bold and all distinguishable thanks to context.
Key combinations can be distinguished from an individual key by the plus sign that connects each part of a key combination. For example:
Press Enter to execute the command.
Press Ctrl+Alt+F2 to switch to a virtual terminal.
The first example highlights a particular key to press. The second example highlights a key combination: a set of three keys pressed simultaneously.
If source code is discussed, class names, methods, functions, variable names and returned values mentioned within a paragraph will be presented as above, in mono-spaced bold. For example:
File-related classes include filesystem for file systems, file for files, and dir for directories. Each class has its own associated set of permissions.
Proportional Bold
This denotes words or phrases encountered on a system, including application names; dialog box text; labeled buttons; check-box and radio button labels; menu titles and sub-menu titles. For example:
Choose SystemPreferencesMouse from the main menu bar to launch Mouse Preferences. In the Buttons tab, select the Left-handed mouse check box and click Close to switch the primary mouse button from the left to the right (making the mouse suitable for use in the left hand).
To insert a special character into a gedit file, choose ApplicationsAccessoriesCharacter Map from the main menu bar. Next, choose SearchFind… from the Character Map menu bar, type the name of the character in the Search field and click Next. The character you sought will be highlighted in the Character Table. Double-click this highlighted character to place it in the Text to copy field and then click the Copy button. Now switch back to your document and choose EditPaste from the gedit menu bar.
The above text includes application names; system-wide menu names and items; application-specific menu names; and buttons and text found within a GUI interface, all presented in proportional bold and all distinguishable by context.
Mono-spaced Bold Italic or Proportional Bold Italic
Whether mono-spaced bold or proportional bold, the addition of italics indicates replaceable or variable text. Italics denotes text you do not input literally or displayed text that changes depending on circumstance. For example:
To connect to a remote machine using ssh, type ssh username@domain.name at a shell prompt. If the remote machine is example.com and your username on that machine is john, type ssh john@example.com.
The mount -o remount file-system command remounts the named file system. For example, to remount the /home file system, the command is mount -o remount /home.
To see the version of a currently installed package, use the rpm -q package command. It will return a result as follows: package-version-release.
Note the words in bold italics above — username, domain.name, file-system, package, version and release. Each word is a placeholder, either for text you enter when issuing a command or for text displayed by the system.
Aside from standard usage for presenting the title of a work, italics denotes the first use of a new and important term. For example:
Publican is a DocBook publishing system.

1.2. Pull-quote Conventions

Terminal output and source code listings are set off visually from the surrounding text.
Output sent to a terminal is set in mono-spaced roman and presented thus:
books        Desktop   documentation  drafts  mss    photos   stuff  svn
books_tests  Desktop1  downloads      images  notes  scripts  svgs
Source-code listings are also set in mono-spaced roman but add syntax highlighting as follows:
package org.jboss.book.jca.ex1;

import javax.naming.InitialContext;

public class ExClient
{
   public static void main(String args[]) 
       throws Exception
   {
      InitialContext iniCtx = new InitialContext();
      Object         ref    = iniCtx.lookup("EchoBean");
      EchoHome       home   = (EchoHome) ref;
      Echo           echo   = home.create();

      System.out.println("Created Echo");

      System.out.println("Echo.echo('Hello') = " + echo.echo("Hello"));
   }
}

1.3. Notes and Warnings

Finally, we use three visual styles to draw attention to information that might otherwise be overlooked.

Note

Notes are tips, shortcuts or alternative approaches to the task at hand. Ignoring a note should have no negative consequences, but you might miss out on a trick that makes your life easier.

Important

Important boxes detail things that are easily missed: configuration changes that only apply to the current session, or services that need restarting before an update will apply. Ignoring a box labeled 'Important' will not cause data loss but may cause irritation and frustration.

Warning

Warnings should not be ignored. Ignoring warnings will most likely cause data loss.

2. Getting Help and Giving Feedback

2.1. Do You Need Help?

If you experience difficulty with a procedure described in this documentation, visit the Red Hat Customer Portal at http://access.redhat.com. Through the customer portal, you can:
  • search or browse through a knowledgebase of technical support articles about Red Hat products.
  • submit a support case to Red Hat Global Support Services (GSS).
  • access other product documentation.
Red Hat also hosts a large number of electronic mailing lists for discussion of Red Hat software and technology. You can find a list of publicly available mailing lists at https://www.redhat.com/mailman/listinfo. Click on the name of any mailing list to subscribe to that list or to access the list archives.

2.2. Give us Feedback

If you find a typographical error, or know how this guide can be improved, we would love to hear from you. Submit a report in Bugzilla against the product JBoss Enterprise Web Server and the component doc-Release-Notes. The following link will take you to a pre-filled bug report for this product: http://bugzilla.redhat.com.
Fill out the following template in Bugzilla's Description field. Be as specific as possible when describing the issue; this will help ensure that we can fix it quickly.
Document URL:


Section Number and Name:


Describe the issue:


Suggestions for improvement:


Additional information:


Be sure to give us your name so that you can receive full credit for reporting the issue.

Chapter 1. Introduction

These release notes contain important information related to JBoss Enterprise Web Server 2.0. New features, known problems, resources, and other current issues are addressed here.

1.1. Overview

JBoss Enterprise Web Server is a fully-integrated and certified set of components for hosting Java web applications. It is comprised of the industry's leading web server (Apache HTTP Server), the popular Apache Tomcat Servlet container as well as load balancers (mod_jk and mod_cluster), Hibernate, the Tomcat Native library and others.
Supported Configurations
For a comprehensive list of supported configurations for JBoss Enterprise Web Server 2.0, refer to the JBoss Enterprise Web Server Supported Configurations page.

1.2. Product Documentation Locations

JBoss Enterprise Web Server includes multiple types of documentation, as follows:
  • The JBoss Enterprise Web Server Product Documentation. This documentation is available at the Red Hat Customer Support Portal's JBoss Enterprise Web Server page.
  • The jboss-ews-docs-2.0.0.zip file contains documentation about the following:
    • httpd
    • mod_auth_kerb
    • mod_cluster
    • mod_jk
    • openssl
    • tomcat6
    • tomcat7
    • tomcat-native
    • mod_ssl documentation is also available at the location doc/httpd/mod/mod_ssl.html.

Chapter 2. New Features

The following is a list of new features available in JBoss Enterprise Web Server 2.0:
  • The inclusion of Tomcat 7.
  • The inclusion of Hibernate.
  • SELinux policies for Apache HTTPD and Tomcat 6 and 7.
  • Updated versions of Apache HTTPD and Tomcat 6.
  • An updated version of the mod_cluster connector.
  • Support for Solaris 11.
  • The addition of mod_auth_kerb for better integration with Red Hat Enterprise Linux and Solaris.

Chapter 3. Excluded and Removed Items

This section outlines the items which are excluded from this release, deprecated or removed. In order to maintain a high level of backwards compatibility and customer service, an item will usually be deprecated before it is removed from a release.

Note

The difference between an excluded item and a removed item is that an excluded item is one that is commonly a part of a component of the JBoss Enterprise Web Server but has never featured within a JBoss Enterprise Web Framework release. However, a removed item is one that has previously been in a release of the JBoss Enterprise Web Server and is no longer included.

3.1. Excluded Items

The following items have been excluded from this release of the JBoss Enterprise Web Server:
  • Tomcat Clustering has been excluded from the Apache Tomcat 6 and 7 component. Specifically the catalina-tribes.jar and catalina-ha.jar files have been removed. This eliminates the possibility of session replication.

3.2. Removed Items

The following http modules have been removed from the Red Hat Enterprise Linux 5 and 6 distribution of this release of JBoss Enterprise Web Server:
  • mod_file_cache
  • mod_imagemap
  • mod_mem_cache
  • Tomcat 5 (this has been removed and replaced with Tomcat 7)

Note

mod_disk_cache can be used instead of mod_file_cache and mod_mem_cache.

Chapter 4. Known Issues

This chapter contains a description of known issues in JBoss Enterprise Web Server 2.0. Where available, these issues include workarounds.

4.1. General Known Issues

The following is a list of known issues in JBoss Enterprise Web Server 2:
JBPAPP-10084 - IPv6 :: address slowing down Tomcat6/7 on MS Windows
When an IPv6 address is used to start Tomcat 6 or 7 on Windows (for example <Connector port="8080" protocol="HTTP/1.1" address="::" />) and results in a significantly slower shutdown process when the user shuts down Tomcat. During the shutdown process, the catalina.log file logs a warning for this shutdown:
WARNING: Acceptor thread [http-0%3A0%3A0%3A0%3A0%3A0%3A0%3A0-8080-Acceptor-0] failed to unlock. Forcing hard socket shutdown
JBPAPP-3628 - /host-manager application doesn't persist newly created virtual hosts
When a virtual host is created using the /host-manager/html application, all actions work as expected, but the newly created host is not persistently added to the Tomcat configuration. Only the localhost is listed after server restart.
As a workaround for persistence issues, virtual hosting can be managed manually.
JBPAPP-10131 - mod_jk doesn't support IPv6
The version of mod_jk included with JBoss Enterprise Web Server 2 does not support IPv6. This is an upstream bug.
JBPAPP-10112 - mod_cluster: advertising doesn't work in mixed IPv4/IPv6 setting
When using JBoss Enterprise Web Server with Red Hat Enterprise Linux 5 and 6, advertising using mod_cluster fails when IPv6 is used by itself and when a mixed protocol setting (IPv4 and IPv6) is used. The following error message displays in the error_log:
[error] (22)Invalid argument: mod_advertise: ma_group_join apr_mcast_hops failed
[error] (22)Invalid argument: mod_advertise: multicast join failed for ff01::1:25533.
This occurs due to an old version of the apr library available in Red Hat Enterprise Linux 6. As a workaround, use RHN to get the package apr-devel-1.3.9-5.el6_2 or newer, which fixes this problem. Users without access to RHN cannot access the apr package version that fixes this problem
JBPAPP-10235 - Tomcat[6,7]: Start with security manager fails on RHEL with jdk-ibm16,ibm17
When using JBoss Enterprise Web Server with Red Hat Enterprise Linux with either the IBM JDK 1.6 or 1.7, the startup.sh -security command does not start tomcat (6 or 7) as expected and produces exceptions in the logs.
JBPAPP-10280 - Jsvc doesn't work with ibm jdk
Attempting to start jsvc on JBoss Enterprise Web Server using Red Hat Enterprise Linux 5 or 6 with the IBM JDK 1.6 or 1.7 fails. Specifically the failure occurs when jsvc is started using a command similar to the following:
/opt/ews/workspace/jboss-ews-2.0/extras/jsvc   -showversion -cp /opt/ews/workspace/jboss-ews-2.0/tomcat6/bin/bootstrap.jar  -outfile /opt/ews/workspace/jboss-ews-2.0/tomcat6/logs/catalina.out -errfile /opt/ews/workspace/jboss-ews-2.0/tomcat6/logs/catalina.err -pidfile /opt/ews/workspace/jboss-ews-2.0/tomcat6/tomcat6.pid   -user hudson  -Dcatalina.home=/opt/ews/workspace/jboss-ews-2.0/tomcat6 -Djava.io.tmpdir=/opt/ews/workspace/jboss-ews-2.0/tomcat6/temp -jvm server org.apache.catalina.startup.Bootstrap
In the error file (specified by the -errfile option in the command), the following error appears:
Invalid JVM name specified server
Cannot locate JVM library file
Service exit with a return value of 1
JBPAPP-9704 - Mod_jk: recover_time is not properly used
The recover_time value is only applied correctly once (the first time). The problem manifests when recover_time is set to a value greater than 60 seconds and is greater than the value of worker.maintain. After the first recover attempt passes and the worker errors back out to its global error state, the worker will be placed in recovery mode again on the next invocation of the worker.maintain method.
JBPAPP-9814 - Tomcat7: daemon.sh startup error
When using JBoss Enterprise Web Server with Red Hat Enterprise Linux, starting tomcat7 as a jsvc service using the daemon.sh script fails and displays the following error:
/opt/jboss-ews-2.0/share/tomcat7/bin/daemon.sh[186]: /opt/jboss-ews-2.0/share/tomcat7/bin/jsvc: not found [No such file or directory]
As a workaround for this issue, copy jsvc from jboss-ews-2.0/sbin/jsvc to jboss-ews-2.0/share/tomcat7/bin.
JBPAPP-9703 - JK status manager - mass nodes handling works strange
Attempts to manage multiple nodes using the status manager URL such as the following does not work correctly:
cmd=update&mime=prop&w=router&att=vwa&val0=1&val1=1
As a workaround for this problem, use the status manager's web interface instead.
JBPAPP-10316 - hibernate-dist.zip contains different hibernate-release-4.1.3.Final-redhat-1/lib/required/ant-antlr.jar
The ant-antlr.jar file, while packaged and shipped in the ZIP installation files, is not supported in JBoss Enterprise Web Server 2.0.
JBPAPP-10311 - jaspter-jdt.jar
The file jaspter-jdt.jar is packaged in JBoss Enterprise Web Server's Tomcat 7 library for Windows and Solaris and Red Hat Enterprise Linux 6 ZIP installation files. Additionally, in the Red Hat Enterprise Linux 5 ZIP files, the file is included in both the Tomcat 6 and 7 libraries. jaspter-jdt.jar should be called jasper-jdt.jar but the spelling error does not affect its function in JBoss Enterprise Web Server.
JBPAPP-10315 - Tomcat6 el-api.jar is linked to Tomcat7 version
In JBoss Enterprise Web Server, both alternatives/el_api and tomcat%{name}-el-api-%{version}.jar point to a common target within the tomcat libraries in /usr/share/java. As a result, the alternatives package points to the EL API library in /usr/share/java as does the link from /usr/share/tomcat${version}/lib.
Tomcat%{version} installs el_api in alternatives using the same name: el_api. Therefore, either can overwrite the other without the user knowing it. As a result, alternatives/el_api users may receive a version of the el_api that is different from the one they expect.
This does not affect the el-api library used by tomcat%{version}, but does affect users of alternatives/el_api.
JBPAPP-10334 - Problem with manager, host-manager in Tomcat6 installed from EWS2.0 RPMs
When JBoss Enterprise Web Server 2.0 is installed using RPMs in Red Hat Enterprise Linux 5 or 6 and Tomcat 6 is started, deployment of the manager and host-manager fail with a Permission denied error for the manager.xml and host-manager.xml files. This occurs because the parent directory of these files (/etc/tomcat6/Catalina/localhost) is owned by the user root instead of the expected user tomcat.
A workaround for this issue is to modify permissions for the Catalina directory as follows:
# cd /etc/tomcat6; chmod -R tomcat Catalina
After successfully changing the permissions for the directory, run the command service tomcat6 start to run Tomcat 6.
JBPAPP-9958 - Tomcat6/7 doesn't allow character ':' in several properties (server.xml)
JBoss Enterprise Web Server's version of Tomcat6/7 does not allow the character : in server.xml for hostname specifications. Normally, the character is used as a delimiter for IPv6 addresses.
JBPAPP-10321 - mod_cluster returns "Bad Gateway" HTTP ErrorCode 502 with https
mod_cluster returns a HTTP error 502 (Bad Gateway) after a period of inactivity if only HTTPS connector is enabled for balancer-worker communication. Httpd tries to re-use a connection that has already been closed already. SSL handshake fails and HTTP error is triggered.
As a workaround, either allow AJP connector on all workers or set maxKeepAliveRequests="1" in server.xml, set smax to 0 in mod_cluster worker configuration, set SetEnv proxy-nokeepalive 1 and SetEnv proxy-initial-not-pooled 1 in your httpd configuration.

4.2. Known Issues for the JBoss Operations Network Plugin

The following is a list of known issues in JBoss Enterprise Web Server 2 for the JBoss Operations Network plugin:
BZ-865460 - Cannot add a Group to tomcat7's UserDatabase
Adding a User Group using the JBoss Operations Network (JON) interface in JBoss Enterprise Web Server results in the following error in the agent's log:
2012-10-11 09:35:28,596 DEBUG [ResourceFactory.executor-1] (rhq.core.pc.inventory.CreateResourceRunner)- Throwable was found in creation report for request [10083].
java.lang.IllegalStateException: Name [roles] specified for parameter of operation [createGroup] on MBean [Users:type=UserDatabase,database=UserDatabase] is invalid. The MBean operation does not take a parameter by that name.
	at org.rhq.plugins.jmx.MBeanResourceComponent.invokeOperation(MBeanResourceComponent.java:576)
	at org.rhq.plugins.jmx.MBeanResourceComponent.invokeOperation(MBeanResourceComponent.java:524)
	at org.jboss.on.plugins.tomcat.TomcatUserDatabaseComponent.createResource(TomcatUserDatabaseComponent.java:68)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at org.rhq.core.pc.inventory.ResourceContainer$ComponentInvocationThread.call(ResourceContainer.java:634)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:679)
BZ-865403 - Cannot add a User to tomcat6's UserDatabase
Adding a user using the JBoss Operations Network (JON) interface used in JBoss Enterprise Web Server results in the following error in the agent log:
2012-10-11 06:58:40,373 DEBUG [ResourceFactory.executor-1] (rhq.core.pc.inventory.CreateResourceRunner)- Throwable was found in creation report for request [10032].
java.lang.IllegalStateException: Name [roles] specified for parameter of operation [createUser] on MBean [Users:type=UserDatabase,database=UserDatabase] is invalid. The MBean operation does not take a parameter by that name.
	at org.rhq.plugins.jmx.MBeanResourceComponent.invokeOperation(MBeanResourceComponent.java:576)
	at org.rhq.plugins.jmx.MBeanResourceComponent.invokeOperation(MBeanResourceComponent.java:524)
	at org.jboss.on.plugins.tomcat.TomcatUserDatabaseComponent.createResource(TomcatUserDatabaseComponent.java:68)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at org.rhq.core.pc.inventory.ResourceContainer$ComponentInvocationThread.call(ResourceContainer.java:634)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
BZ-865454 - Cannot manage tomcat7's deployed web applications
For the ZIP version of JBoss Enterprise Web Server, all deployed web applications unexpectedly appear "unavailable" and management operations applies to them are ineffective. As an example, a stop operation on a running web application results in the following error:
java.lang.IllegalStateException: Could not find MBean for WAR '//localhost/my-simple-webapp'.
	at org.jboss.on.plugins.tomcat.TomcatWarComponent.invokeOperation(TomcatWarComponent.java:350)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at org.rhq.core.pc.inventory.ResourceContainer$ComponentInvocationThread.call(ResourceContainer.java:634)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:679)
BZ-583996 - EWS Tomcat: "Store Configuration" operation doesn't appear to do anything?
In a running implementation of JBoss Enterprise Web Server on Solaris, selecting the Store Configuration option in the Operations menu does not result in any updates to the agent.log file or the server.xml file.
This occurs because the StoreConfig MBean used to persist changes to server.xml is not included in the version of Tomcat that ships with JBoss Enterprise Web Server.
JBPAPP-10181 - javax.management.InstanceNotFoundException: Catalina:type=StoreConfig
When using Tomcat 6 and 7 in JBoss Enterprise Web Server, configuration changes made using the JBoss Operations Network (JON) agent do not persist into XML. Configuration changes made through a remote JMX interface also do not persist to server.xml because this requires calling the storeConfig method from the storeConfig MBean.

Revision History

Revision History
Revision 2-1.28.4002013-10-31Rüdiger Landmann
Rebuild with publican 4.0.0
Revision 2-1.28Tue Nov 6 2012Misha Husnain Ali
Updated supported configuration page link.