Red Hat Training

A Red Hat training course is available for Red Hat JBoss Web Server

Chapter 6. Known Issues for the 3.1.0 Release

JWS-365 - Socked bind failed on link-local (IPv6)

If you bind to a link-local IPv6 address, a SEVERE exception will be logged and the connector will fail to initialize.

Workaround

Bind the address in the configuration file without using the brackets. For instance, the following configuration snippet would bind correctly:

Listen ffff::ffff:ffff:ffff:ffff%3:80
JWS-132 - JON Tomcat: NullPointerException when Tomcat Web Application (WAR) config change

When monitoring JBoss Web Server using JBoss ON, a NullPointerException similar to below may be thrown when a Tomcat web application’s configuration changed.

java.lang.NullPointerException
 at org.rhq.plugins.jmx.MBeanResourceComponent.updateResourceConfiguration(MBeanResourceComponent.java:532)
 at org.jboss.on.plugins.tomcat.TomcatWarComponent.updateResourceConfiguration(TomcatWarComponent.java:950)
 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:606)
 at org.rhq.core.pc.inventory.ResourceContainer$ComponentInvocation.call(ResourceContainer.java:759)
 at java.util.concurrent.FutureTask.run(FutureTask.java:262)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

The cause of this issue is currently under investigation.

Workaround

None

JWS-86- Upgrading Tomcat plugin, metric names not updated

When upgrading a RHQ 4.5 installation to 4.6, the Tomcat plugin may not be properly updated. In this situation the following exception is thrown:

java.lang.IllegalArgumentException: The property [name] marked as required in the configuration definition of [Tomcat Connector] has no attribute 'default'

The cause of this issue is currently under investigation.

Workaround

None

JWS-63 - Tomcat mod_cluster integration does not allow one to choose a connector

Configuring mod_cluster to use ws:// with EnableWsTunnel (mod_proxy_wstunnel) requires Tomcat to use a http connector, and does not allow you to use an ajp connector. At the moment, Tomcat ignores this option. This issue is expected to be fixed in a future update.

Workaround

None

JWS-185 - (ASF BZ 53971) IPv6: address slowing down Tomcat on MS Windows

When an IPv6 address is used to start Tomcat 7 on Microsoft Windows (for example, <Connector port="8080" protocol="HTTP/1.1" address="::" />), this results in a significantly slowed down shutdown process when Tomcat is shutdown. During the shutdown process, the catalina.log file contains a warning similar to the following:

WARNING: Acceptor thread [http-0%3A0%3A0%3A0%3A0%3A0%3A0%3A0-8080-Acceptor-0] failed to unlock. Forcing hard socket shutdown

The cause of this issue is currently under investigation.

Workaround

None

JWS-6 - hibernate c3p0 mchange-commons-java raises error on IBMJDK

If using mchange-commons-java in Hibernate c3p0 on an IBM JDK, a java.lang.ClassNotFoundException: org.slf4j.ILoggerFactory error may be thrown, such as the following:

java.lang.ClassNotFoundException: org.slf4j.ILoggerFactory
 at org.apache.catalina.loader.WebappClassLoader.loadClass(Unknown Source)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(Unknown Source)
 at java.lang.Class.forNameImpl(Native Method)
 at java.lang.Class.forName(Class.java:199)
 at com.mchange.v2.log.MLog.findByClassnames(MLog.java:143)
 at com.mchange.v2.log.MLog.refreshConfig(MLog.java:73)
 at com.mchange.v2.log.MLog.<clinit>(MLog.java:51)

The cause of this issue is currently under investigation.

Workaround

You can work around this issue by setting the following property in your application:

System.setProperty("com.mchange.v2.log.MLog", "com.mchange.v2.log.jdk14logging.Jdk14MLog");
JWS-645 - Document tomcat-native dependency on JBCS channel for jbcs-httpd24-httpd-libs

Installing the tomcat-native package fails due to the jbcs-httpd24-httpd-libs missing dependency.

Workaround

Ensure that the JBCS channel is enabled on the system when installing the tomcat-native package.

JWS-653 - Solaris, Windows - same tomcat-juli-adapters.jar and tomcat-juli.jar for Tomcat 7 and 8

The tomcat-juli and tomcat-juli-adapters JARs provided by the extras libraries in the jws-application-servers distribution for Windows and Solaris are incorrect for Tomcat 7. They are duplicates of the Tomcat 8 jars.

Workaround

None

JWS-521 - Add JSVC script to tomcat distribution

A JSVC wrapper was added to Tomcat on RHEL 6, however, the init script is missing. Additionally, the RHEL 7 systemd unit uses the system’s JSVC binary rather than the JBCS provided binary.

Workaround

There is no workaround for the missing RHEL 6 init script. However, to workaround the RHEL 7 systemd unit issue, you have to manually update the path of the JSVC binary in the /usr/libexec/tomcat*/functions script to point to the correct /opt/rh/jbcs-httpd24/root/usr/bin/jsvc binary.

JWS-470 - RHEL 6 RPM Confusing service status output for tomcat7 and tomcat8 installed both on RHEL system

When running multiple instances of tomcat the init script status command may return incorrect information.

Workaround

None

JWS-401 - Tomcat does not properly parse spaces in JVM parameters/settings

Tomcat fails to start when using JAVA_OPTS, which have spaces in them.

Workaround

None

JWS-657 - tomcat-native installs RHEL apr in addition to jbcs-httpd24-httpd-libs

The installation of the tomcat-native RPM still incorrectly requires the installation of the apr/apr-util libraries distributed with RHEL. However, these libraries are not required as the apr/apr-utils versions distributed by JBCS are used. This requirement for the unused RHEL apr/apr-util libraries will be removed in a future update.

Workaround

If the RHEL apr/apr-util libraries are not installed, the system must be subscribed to the RHEL channel and the channel be enabled.

JWS-649 - Tomcat security-manager starting with errors in log

The manager and host-manager web applications fail to deploy when using the Security Manager.

Workaround

If you install the admin-webapps using the Security Manager, then move the context.xml from the manager and host-manager web applications, otherwise the admin applications will not deploy. Move from CATALINA_HOME/webapps/[host-]manager/META-INF/context.xml to CATALINA_HOME/conf/Catalina/localhost/[host-]manager.xml.

JWS-280 - Running async example servlet multiple times causes Tomcat crash

If the async example servlet is run multiple times, it causes Tomcat to crash.

Workaround

None

JWS-647 - Hibernate missing some JAR files in RPMs

If you install Hibernate using the RPM package from JWS3 channel, some files are missing.

Workaround

These missing Hibernate files are available in the ZIP distribution.

JWS-663 - service.bat for Tomcat 8 does not correctly set library path, natives not loaded

The service.bat for Tomcat 8 does not correctly set the library path and so the natives are not loaded.

Workaround

You have to manually append C:\Program Files\jws-3.1\bin to the system’s PATH and start the Tomcat 8 service again.

JWS-662 - Windows, Cannot unzip Hibernate zip in GUI: Error: Path too long

On Windows, the Hibernate ZIP files displays an error if you unzip it using the user interface.

Workaround

Use PowerShell to unzip the Hibernate file.

$src = "C:\Users\ben\Documents\3.1.0-CR7\hibernate-dist-3.1.0-CR7.zip"
$dst = "C:\Users\ben\Documents\3.1.0-CR7\"
Add-Type -assembly "system.io.compression.filesystem"
[io.compression.zipfile]::ExtractToDirectory($src, $dst)
JWS-654 - RHEL 7 RPM Tomcat does not properly parse spaces in JVM parameters/settings

Tomcat fails to start when using JAVA_OPTS, which have spaces in them.

Workaround

Do not use spaces in parameters.

JWS-633 - ASF BZ 60683 - Tomcat throws NPE after startup with sec. manager on IBM JDK17

When using the Security Manager and IBM JDK, Tomcat may respond with a 500 status that may be triggered by the compilation of large JSP files. This is caused by an unhanded NullPointerException.

Workaround

You can precompile JSPs before deploying them to Tomcat.

JWS-666 - RHEL 7 RPM - TOMCAT_USER variable ignored

The TOMCAT_USER and TOMCAT_GROUP environment variables defined in the sysconfig and tomcat configuration files are ignored by the RHEL 7 systemd service units. This is a known issue for JWS 3.1.0 and is a limitation of the systemd design.

Workaround

In order to update the user/group owner of the Tomcat processes with the new systemd service unit on RHEL 7, you will need to update the User and Group properties of the service unit (/usr/lib/systemd/system/tomcat7.service and /usr/lib/systemd/system/tomcat8.service) rather than the sysconfig or tomcat conf files.