Chapter 5. Known Issues
Known issues in Enterprise Application Platform 5.1.1 are listed by component.
Clustering
- JBPAPP-4541
- If you use the partitionName property on the
MCBean:ServerConfig
Profile Service managed component, it returns anull
value. Instead, use the partionName from theMCBean:HAPartition
managed component, which is the correct property. - JBPAPP-5464
- Using the Hibernate SecondLevel Cache at the
InitialState
phase causes aNullPointerException
. To work around this issue, disable the query cache. To disable the query cache, editpersistence.xml
to either explicitly set thequery_cache
tofalse
, as follows, or remove the line altogether, since the query cache is disabled by default.<property name="hibernate.cache.use_query_cache" value="false"/>
Consoles
- JBPAPP-5285
- If you change the database properties via the Admin Console, the changes are persistent. However, if you undo the changes, the old values still persist when you restart the Application Server. This problem is not yet resolved, but you can work around it by editing the associated attachments file in
server/PROFILE/data/attachments
, to force the datasource configuration to use the new settings.
EJB
- JBPAPP-4899
- Compiling
jboss-ejb3-core-1.3.5
with default settingLANG=C
causes an unmappable character for encoding ASCII error. UseLANG=en_US.UTF-8
to work around this issue. - JBPAPP-5121
- The deployment of a persistence unit into an EAR will fail when the unit is outside of the EAR and the bean attempting to inject the persistence unit is within the EAR. The injection fails because the persistence unit cannot be found. This is expected behavior of the EJB3 spec. For strict EJB3-spec compliance, the persistence unit should be packaged within the EAR. A JBoss-specific behavior allows persistence units to exist outside EARs. This is configured in the file
deployers/ejb3.deployer/META-INF/jpa-deployer-jboss-beans.xml
under a JBoss AS server profile. The relevant section is:<bean name="PersistenceUnitDependencyResolver" class="org.jboss.jpa.resolvers.DynamicPersistenceUnitDependencyResolver"/>
By default, the DynamicPersistenceUnitDependencyResolver is used, which allows the spec-compliant behavior to be controlled through the MBean in the JMX Console. The spec-noncompliant JBoss variant search strategy can be found here.
Hibernate
- JBPAPP-6395
- When using the Criteria API with LEFT OUTER JOIN to add criteria to children, the child collections will only contain those children matching the criteria. This behavior also applies when not using any Filters. For example:
criteria.createCriteria("children", JoinFragment.LEFT_OUTER_JOIN)
There is no workaround for this issue. - JBPAPP-6475
- org.hibernate.PropertyAccessException may be thrown if an Entity contains the following conditions:
- Uses @EmbeddedId
- Uses @JoinTable on a collection or association property/field, which references another property/field of the entity.
For example:@EmbeddedId private MyPk id; private Long name; @CollectionOfElements @JoinTable( name="GLOBAL_NOTES", joinColumns=@JoinColumn(name="text_id", referencedColumnName="name")) private Set<String> globalNotes = new HashSet<String>();
There is no workaround for this issue, other than not using @EmbeddedId.
Messaging
- JBPAPP-3904
- Oracle JDBC driver version 11.1.0.7.0 causes the JBoss Messaging Transaction Service to fail with a
SQLException
("Bigger type length than Maximum") on Oracle 11g R1.This is caused by a regression in Oracle JDBC driver 11.1.0.7.0.We recommend Oracle JDBC driver version 11.2.0.1.0 for use with Oracle 11g R1, Oracle 11g R2, Oracle RAC 11g R1 and Oracle RAC 11g R2. - JBPAPP-4668
- Two JBoss Messaging Test Suite tests fail on Oracle 11g R1, R2 and RAC with the latest JDBC driver, version 11.2.0.2.0:
- QueueManagementTest.testDestroyDestinationProgrammatically
- QueueManagementTest.testDestroyDestinationProgrammaticallyWithParams
These tests use a large value for the fullSize queue configuration parameter, which is passed to thesetFetchSize
method on thejava.sql.PreparedStatement
. A problem with the JDBC driver means that more than the usual amount of memory is consumed whenexecuteQuery()
is called, which results in ajava.lang.OutOfMemoryError
, causing the test to fail. - JBPAPP-5124
- When using Sybase database with the JDBC driver Sybase jConnect JDBC driver v7 (Build 26502), a
MaxParams
attribute in thesybase-persistence-service.xml
configuration file cannot be set higher than481
due to a limitation of thePreparedStatement
class in this driver. Unexpected failures can occur when theMaxParams
attribute is set to a value higher than481
. To avoid this issue, setMaxParams
to a smaller value than481
. - JBPAPP-5537
- If a message-driven bean is deployed with the default settings
useDLQ=true, DLQMaxResent=5
and message redelivery is prompted, a message remains in the queue in adelivering
state even after the message is delivered to the dead letter queue. The workaround for this issue is to disable the dead letter queue handling on the MDB side by settinguseDLQ=false
.
Networking
- JBPAPP-5591
- IPv6 is not supported in version 5 of the Enterprise Platform.
RESTEasy
- JBPAPP-4665
- Resteasy-guice applications fail to deploy because of a
java.lang.SecurityException
. An error message similar to the following is displayed:java.lang.SecurityException: class "org.jboss.resteasy.examples.guice.hello.DefaultGreeter$$FastClassByGuice$$70fd68d0"'s signer information does not match signer information of other classes in the same package
This occurs because thecglib.jar
in JBoss Enterprise Application Platform is signed, and thecglib-instrumented
proxy uses thecglib.jar
signer information instead of the signer information of the application target class. - JBPAPP-4995
- The TwitterClient example is deprecated in RESTEasy 1.2.x due to Twitter deprecating the Basic Authentication method in August 2010. All applications must now use OAuth. RESTEasy 2.x contains a reworked TwitterClient example that includes OAuth. Download the example from RESTEasy 2.x for testing purposes.
- JBPAPP-5038
- The
jettison.jar
file is not included in thejboss-eap-5.1/resteasy/lib
directory ofjboss-eap-noauth-5.1.0.CR3.zip
. To work around this issue, use thejettison.jar
file included in the Seam distribution,jboss-eap-5.1.1/seam/lib/jettison.jar
.
Scripts
- JBPAPP-5003
- The script
jboss_init_redhat.sh
has been removed from distribution. Instead, use your own script to customize start-up of the Enterprise Platform.
Seam
- JBPAPP-5039
- An incompatibility with Microsoft Internet Explorer 8 and the Seam Tasks Example resulted in text appended to a task being represented as a blank line in the task list. There is no work-around to this issue.
- JBPAPP-6366
- Some examples included in the
jboss-seam2-examples
distribution are designed to showcase functionality of the JBoss Enterprise Application Platform server. Those examples that require a full Application Platform server will not run on a JBoss Enterprise Web Platform server.
TCK
- JBPAPP-3929
- When
java.sql.Date.valueOf
attempts to parse dates of the format yyyy-mm-dd, the TCK test threw a java.lang.IllegalArgumentException. This was due to a regression in the latest Sun JVM, Sun JDK 1.6.0_24 (see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6898593 for more information). The workaround for this issue is to downgrade to Sun JDK 1.6.0_17.
Varia
- JBPAPP-4912
- A NullPointerException was thrown when a datasource depended upon by a webapp was restarted. The error has been changed to an IllegalStateException, which returns "WebModules cannot be restarted, and must be redeployed".