Known and Resolved Issues

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

WebLogic Server Known and Resolved Issues

The following sections describe known problems in WebLogic Server 10.3, as well as problems that were resolved in earlier versions. Entries include a description of the problem, and a workaround or solution where appropriate. A notation in the Fixed In column indicates that the problem has been resolved.

For information about new and changed functionality in WebLogic Server, see “What’s New in WebLogic Server”.

 


Administration Console

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR063594
Information about cached JDBC statements is not displayed on the JDBC Monitoring pages.
9.0 Beta
Will not fix
CR200627
After a page flow completes in the Administration Console, it forwards to a different page, typically a table.
Pressing the browser Back button at this point results in an attempt to load the last JSP file in the completed assistant. At this point, all of the context for this assistant is discarded.
Workaround or Solution:
It is recommended that you do not use the browser Back button to step back into an assistant once changes are cancelled or finished, and that you do not go back to a previous step in an assistant. Instead, use the navigation links and buttons in the Administration Console.
9.0
Will not fix
CR208373
Message-Driven Beans (MDB) may specify adapter-jndi-name in the deployment descriptor to indicate that the MDB is receiving messages from a resource adapter rather than from JMS.
The Administration Console does not currently provide a way to view or configure the Resource Adapter that an MDB is bound to.
MDBs may specify adapter-jndi-name in the deployment descriptor to indicate that the MDB is receiving messages from a resource adapter rather than from JMS. Such a binding entails configuring an ActivationSpec object which is passed to the RA during deployment.
The Administration Console does not currently provide a way to view or configure the ActivationSpec properties on the MDB.
9.1
10.3
CR300921
Some portions of the Console desktop were represented in the portal configuration only as portlets. This made it challenging for a Console extension to individually replace or enhance a single portlet.
In WLS 10.3, the following new portal books and pages have been added:
  • ChangeManagerBook, ChangeManagerPage wrap the change center portlet
  • NavigationBook, NavigationPage wrap the navigation tree portlet
  • QuickLinksBook, QuickLinksPage wrap the quick help links portlet
  • SystemStatusBook, SystemStatusPage wrap the system status portlet
  • ToolbarBook, ToolbarPage wrap the tool bar portlet
  • LocationContextBook, LocationContextPage wrap the bread crumb portlet
  • WorkpaceMessagesBook, WorkpaceMessagesPage wrap the messages portlet
Any Console extensions that replaced these portlets through other means should continue to work as before. They could, however, be re-implemented to leverage the new portal structure.
9.2
10.3
CR306634
The WebLogic Server Administration Console includes pages which can be used to test Web applications, resource connectors, Web Services, and other deployments. Test pages are included for EJBs, but the test points for these listed EJBs are never available.
The omission of these EJB test points does not imply that the EJBs are not reachable or working. Administrators can use the console’s EJB monitoring pages to monitor the activity and status of their deployments.
9.2
 
CR333646
On the Server_name > Configuration > Federation Services >SAML 2.0 General tab, the following three fields in the Artifact Resolution Service section are not editable:
  • Only Accept Signed Artifact Requests
  • Artifact Cache Size
  • Artifact Cache Timeout
10.3
 
CR334479
Under some circumstances, canceled policy changes were subsequently saved. On Console policy pages which manage multiple resources (for example, all the methods in an EJB or a Web Service), if an administrator changed the conditions for a policy on one method, then selected another method, the following prompt was displayed:
Do you want to save your changes to the conditions before leaving this page? (Click OK to save your changes. Click Cancel to discard them.)
If the administrator clicked Cancel and subsequently specified conditions for a different method, clicking Save recorded the conditions for both resources.
In WLS 10.3, Save and Cancel work correctly under these circumstances, and cancelled changes will no longer be saved.
Also note that the confirmation prompt has changed as follows:
Are you sure you want to navigate away from this page?
You have unsaved changes. To save your changes press Cancel to stay on this page. You can then complete your changes and save them.
Press OK to continue, or Cancel to stay on the current page.
9.0
10.3
CR341605
There are two ways in the Administration Console to configure the domain's user lockout policy:
Method 1
The domain's user lockout policy page:
  1. In the right pane of the Console Home page, select Domain in the Domain Configurations section.
  2. Select the Security > Policies > User Lockout tab.
Method 2
The default realm's global policy table:
  1. Under Domain Structure in the left navigation pane, select Security Realms.
  2. In the Realms table, click the name of the default realm.
  3. Select the Roles and Policies > Realm Policies tab.
  4. Click the + next to Domain in the Policies table.
  5. Under Domain, click the + next to your domain name.
  6. On the Unlock User row of your domain, click View Policy Conditions in the Policy column.
If you have a domain that was created prior to 10.3, and you used the global policy table (Method 2) to modify the domain's user lockout policy, the policy did not take affect and the user lockout policy from the domain's user lockout policy page (Method 1) was used instead. That is, the security policy you configured was ignored.
This is only an issue if you configured the user lockout policy by using the global policy table. It is not an issue if you used the domain's user lockout policy page.
If you used the global policy table (Method 2) to set the domain's user lockout policy in a pre-10.3 domain, when you migrate the domain to 10.3, you have to manually configure the user lockout policy again.
9.2
10.3
CR341605
(cont.)
Do this by navigating to the domain's global policy table's user lockout node, as follows:
  1. Under Domain Structure in the left navigation pane, select Security Realms.
  2. In the Realms table, click the name of the default realm.
  3. Select the Roles and Policies > Realm Policies tab.
  4. Click the + next to Domain in the Policies table.
  5. Under Domain, click the + next to your domain name.
  6. On the User Lockout row of your domain, click View Policy Conditions in the Policy column.
9.2
10.3
CR367671
In prior releases, an IllegalArgumentException would sometimes occur after clicking Activate Changes when creating or updating a request class on the Configuration tab for a Work Manager instance in the Administration Console.
In WLS 10.3, the changes to the Work Manager MBean will activate successfully and the IllegalArgumentException error no longer occurs.
10.3
10.3
CR368311
Under some circumstances, the Administration Console does not automatically update the request URL to follow administration port configuration changes.
If you have the Automatically Acquire Lock and Activate Changes Console option enabled (which is the default for development mode) and change the Console's address (for example, turn on the domain wide administration port, create an administration channel, or change to the SSL listen port), the Console will not automatically redirect to its new address. Instead, the browser will display an error.
Workaround or Solution:
Enter the URL address and protocol in the browser where the administration server is now listening for requests (for example, switch from http://localhost:7001/console to https://localhost:9002/console).
10.3
 
CR368482
The Administration Console does not always reflect external changes made in a deployment plan. If a change is made in a deployment plan outside of the Console (for example, using Workshop, editing the plan text files directly, or updating a deployment with a new plan using WLST or WebLogic.Deployer) while a Console user is also viewing that deployment plan, the Console user will not see those changes.
Workaround or Solution:
Navigate to a configuration page for a different deployment, then navigate back to the original deployment again.
10.3
 
CR370004
The Administration Console permits the creation of Work Manager configurations that are not supported and do not function as intended. Incorrect Work Manager configurations may result in a number of exceptions being recorded in the server logs, most commonly Validation problems were found exceptions while parsing deployment descriptors.
Workaround or Solution:
Follow the guidelines described in the online help for Work Manager configurations. Specifically, you can only assign one request class to any given Work Manager, and that request class must be of the same or a broader scope than the Work Manager. You should not assign an application-scoped request class to a global Work Manager, and you should not create more than one application-scoped request class for an application-scoped Work Manager.
Correcting the Work Manager configurations to match the documented constraints resolves these issues.
10.3
 
CR370078
To improve its level of accessibility to blind users, in certain situations, the Administration Console provides title attributes for links whose purpose or target needs a better explanation than the link text alone provides. The primary case is when links are part of a 'simulated tab' group, and of which 'tab' is currently selected. However, screen reader users need to make a configuration change for these link title attributes to be read instead of the visible link text.
The following instructions are provided for the leading screen reader, JAWS? (by Freedom Scientific):
To configure JAWS to read link titles:
  1. With WebLogic Server as the active browser window, activate JAWS' Personalized Settings dialog by pressing Insert+Shift+V.
  2. For JAWS versions 6.x, 7.x, and 8.x:
  3. Navigate to the Links With Text Only setting, then select the Title option (toggle through the values by pressing the spacebar).

    For JAWS version 9.x:

    Expand the Links Options node, navigate to the Text Links option, then select the Show Using Title option (toggle through the values by pressing the spacebar).

  4. Select Close to save the configuration change.
10.3
 
CR370592
The Server Status table on the Cluster: Monitoring: Summary page includes two default columns: Primary and Secondary Distribution Names. These fields do not always reflect all of the replication statistics that are collected and displayed on the Cluster: Monitoring: Failover page, depending on the replication scenario.
Please refer to the Cluster: Monitoring: Failover page for definitive information.
10.3
 
CR373049
When using WLST Script Recording in the Administration Console, the current script operations are correctly written to the script file, but are not displayed on the Preferences: WLST Script Recording: Control page.
Workaround or Solution:
On the Preferences: WLST Script Recording: General page, set the file name to an explicit output file.
10.3
 
CR373731
When defining security policies in the Administration Console for an EJB deployment that references types defined in a separate library deployment, exceptions can be observed if that library deployment is not available to the Console.
Workaround or Solution:
All library deployments should be targeted at the admin server as well as any managed servers needed to support referencing applications. This will ensure that when defining policies, the Console will have access to those library deployments so that referenced types can be class-loaded as needed.
10.3
 
CR374586
In the Administration Console Online Help, some of the fields in the Persistence Plugin pages are missing content and/or contain links to MBean attribute pages that do not exist. For an example, see Persistence: Plugins: Access Dictionary Configuration at:
This content will be updated in a future release.
10.3
 

 


Apache Beehive Support

No issues at this time.

 


Clustering

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR333000
In prior releases, with consensus leasing, when a clustered server instance was resumed from the Admin state, the ClusterLeaderService would be started again even though it was already running. This would cause the server to fail.
In WLS 10.3, the ClusterLeaderService no longer starts if it is already running, and the server resumes successfully from the Admin state.
10.3
10.3
CR370084
In prior releases, when a clustered server using unicast messaging is artificially hung by pressing Ctrl-z on a Unix/Linux operating system (suspending the process), then the cluster messaging can throw SocketExceptions over a long period of time.
This issue no longer happens in WLS 10.3.
Workaround or Solution:
Set the system property -Dweblogic.unicast.HttpPing=true. This flag should be needed only in test environments where running processes might be suspended when pressing Ctrl-z.
10.3
10.3

 


Connector (Resource Adapter)

No issues at this time.

 


Console Extensions

No issues at this time.

 


Core Server and Core Work Manager

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR189353
When a machine that is hosting one of the managed servers is abruptly shut down, a network cable is pulled, or its network interface card has issues, and any server attempts communication with that managed server, threads become stuck waiting to get a connection.
Workaround or Solution:
This can currently be resolved by using a private flag:
-Dweblogic.client.SocketConnectTimeoutInSecs
and setting an appropriate timeout value that will release the thread attempting to make the connection and allow the request to fail quickly.
8.1SP01
Will not fix
CR346384
In prior releases, when creating a server with the same name as a previously deleted server, an IllegalArgumentException occurs after clicking Activate Changes. The deleted server was not properly removed from the ServerLifeCycleService, causing the IllegalArgumentException when a new server was created with the same name as the deleted one.
In WLS 10.3, the IllegalArgumentException does not occur.
10.3
10.3
CR355337
When using an IPv6-formatted address for WLS, the URL should include square brackets ('[' and ']') for the host address. Otherwise, WLST may fail to connect to the running server.
Workaround or Solution:
Add square brackets to the host address. For example:
t3://[fe80:0:0:0:203:baff:fe2f:59e5]:9991
10.0MP01
 
CR358428
If the Admin Server is down when a Whole Server Migration occurs for a clustered server, and the server migrates to a machine on which it was never run before, the server cannot be started on the new machine.
Workaround or solution:
Use one of the following workarounds for this issue:
  • Ensure that the Admin Server is up when the server migration is being performed.
  • Use a shared disk/NFS for all the migratable servers in the cluster
10.3
 
CR358477
WorkManagerFactory's findOrCreate() API will only look into globally scoped Work Managers before creating a new Work Manager. As a result, the findOrCreate() API would create a new Work Manager, even when an application-scoped Work Manager of the same name is already defined.
In WLS 10.3, WorkManagerFactory's findOrCreate() API will first look into globally scoped Work Managers and then application-scoped Work Managers before creating a new Work Manager.
10.0MP01
10.3
CR361830
In prior releases, deleting and recreating a Work Manager caused an IllegalArgumentException.
In WLS 10.3, an IllegalArgumentException will not occur when deleting and recreating a Work Manager.
10.3
10.3
CR365822
WebLogic Server internally creates a Work Manager with a default name for every configured application. However, it is possible to explicitly override the default Work Manager by creating a Work Manager with the default name. This will cause an IllegalArgumentException and the Administration Console will show two default Work Managers for the same application.
In WLS 10.3, if you override the default Work Manager, you will see only the overridden default Work Manager associated with the application.
10.3
10.3
CR365859
In prior releases, Work Manager targeting was not being honored, so any globally defined Work Manager configurations were being instantiated for all deployed applications on all servers.
In WLS 10.3, Work Manager targeting is now honored. Therefore, a globally defined Work Manager will only be available for applications to utilize on the servers to which it is targeted.
Any applications that define dispatch policies which reference globally defined Work Manager configurations may be affected. If an application is referencing a global Work Manager configuration, the Work Manager must be targeted to the server where the application is deployed. Otherwise, the Work Manager instance referenced by the application will be unavailable.
10.3
10.3
CR366578
When Fastswap is enabled in a J2EE application, you can make certain types of changes to Java classes during development and expect to see the change without re-deploying, with all instance statesof the Java object being retained.
One type of the change that does NOT retain the object state is that when a field name is changed, it is treated as follows:
  • the field with old name is deleted
  • the field with new name is added
Thus, in this case, any state in the old field is not carried over to the renamed field.
Using the Workshop or FastSwap ant task, you may see a FastSwap operation completed successfully message, even when an instance field name change causes a value reset.
Workaround or solution:
You should expect an instance value to be reset when you change a field name.
10.3
Will not fix
CR368836
In prior releases, when configured for unicast messaging, a cluster member would incorrectly create a log entry indicating that the server was listening on a multicast port, even though multicast messaging was not enabled.
In WLS 10.3, the multicast log entry is reported only when multicast messaging is enabled for the cluster.
10.3
10.3

 


Deployment

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR067087
The security-permission element is available in the weblogic.xml and weblogic-ejb-jar.xml deployment descriptors, but is not available in the weblogic-application.xml descriptor. Therefore, in an Enterprise application, you can only apply security policies to JAR files that are EJBs or Web applications.
7.0
Will not fix
CR071138
The weblogic.Deployer tool interprets any extra string values between command-line arguments as a file specification. For example, if you enter the command:
java weblogic.Deployer -activate -nostage true -name myname -source c:\myapp\mymodule
the tool attempts to activate a file specification named true, because the -nostage option takes no arguments and true is an extraneous string value.
7.0
Will not fix
CR091020
If you deploy an application to a cluster and one or more clustered servers are unavailable (for example, servers partitioned from the cluster due to a network outage), the deployment operation may appear to hang. In addition, the partitioned servers may not deploy the application even after they successfully rejoin the cluster.
Workaround or Solution:
Reboot the partitioned servers after they rejoin the cluster.
8.1
10.0
CR220968
If you deploy a Web application with virtual hosts as targets, you cannot then change the targeting information unless you redeploy the entire Web application with new target information.
Workaround or Solution:
Redeploy the Web application with new target information.
9.0
10.0
CR282367
While using the WebLogic Administration Console with applications or EJBs deployed on a Managed Server that depend on a deployed library, you may encounter a java.lang.NoClassDefFoundError.
Workaround or Solution:
The WebLogic Server Administration Console needs access to any shared library deployments so that Java data types and annotations can be processed. Therefore, all shared library deployments should always be targeted to the Administration Server in addition to any Managed Servers or clusters.
9.0
Will not fix
CR297802
As part of the 9.0 release, WLS introduced the Admin state feature. Failures in the prepare phase of deployment cause the server to stay in the Admin state.
If the weblogic.deployment.IgnorePrepareStateFailures system property is specified as true, then the server will not stay in the Admin state when failures for system resources occur in the prepare phase of deployment.
9.2
10.3
CR320305
Internal fields and methods were incorrectly documented in the API reference. These fields and methods have been deprecated and are no longer documented. You should remove any usage of these fields or methods.
For a complete list, refer to “Deprecated Functionality” in Release Notes.
10.3
10.3
CR320503
In prior releases, after a rename, the run time deployment state contained information for both the old and new modules, instead of just containing information for the new child module TMIDs. This information was returned by the WebLogicDeploymentManager getAvailableModules() method.
In WLS 10.3, WebLogicDeploymentManager getAvailableModules() returns only new child module TMIDs after rename.
10.3
10.3
CR329849
Deployment may fail to complete and could timeout if a transient network error prevented the send of the completion message from the managed server to the administration server.
In WLS 10.3, if the network error is transient, then deployment may succeed instead of waiting for the timeout.
Workaround or Solution:
Change the deployment service to retry the send. If the failure still occurs, ensure that the request is cancelled correctly.
9.1
10.3
CR330135
The cluster constraints setting is ignored by WLS deployment when deploying on a cluster.
In WLS 10.3, WLS deployment was modified to honor the cluster constraints setting and fail deployment if all servers in the cluster are not running. If cluster constraints are enabled, then deployments targeted to a cluster succeed only if all servers in the cluster are running.
9.2
10.3
CR354822
If you start an edit session, install an application, and then undo the changes, a deployment task is not cleaned up appropriately. This task is left in the initializing state and causes issues with future Activate Changes.
10.3
 

 


Documentation

Continuous improvements are made to the WebLogic Server documentation. The latest documentation for WebLogic Server is available from the WebLogic Server Product Documentation Web site at the following location:

http://e-docs.bea.com/wls/docs103/index.html

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR373628
The MBean Reference will not document the interfaces to the SAML 2.0 Identity Asserter and SAML 2.0 Credential Mapping provider. Instead, the Javadoc for these MBean interfaces has been generated in a separate location that will be accessible from e-docs. The sections in Securing WebLogic Server that explain how to configure and manage the SAML 2.0 providers have been revised to include a link to this separate location.
For information about the MBean interfaces to the SAML 2.0 security providers, users need to refer to http://e-docs.bea.com/wls/docs103/saml2_javadocs.
10.3
 
CR373811
  1. The Search function in the MBean Reference does not work.
  2. The Search function in the Samples viewer does not work when accessing the Examples documentation by selecting Oracle Weblogic > Weblogic Server 10.3 > Examples > Documentation from the Windows Start menu, or by clicking the Documentation link at the top of the Examples page.
Workaround or Solution:
There is no workaround for #1.
For #2, to search the Sample Applications and Code Examples, you must start the Examples server and navigate to (http://localhost:7001/examplesWebApp/docs/core/index.html). Click Instructions and then Search.
10.3
 
CR374891
The samples viewer displays the Japanese and English versions of some Avitek Medical Records topics simultaneously.
10.3
 
CR375833
BEA WebLogic Express is no longer available from Oracle, therefore its description has been removed from the WebLogic Server 10.3 documentation. All WebLogic Express functionality is available and supported in other Oracle WebLogic Server products. You can upgrade your 10.0 and earlier WebLogic Express applications to WebLogic Server 10.3.
10.3
 

 


EJBs

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR232765
The primary key in an Oracle table is a CHAR but the query field in the SQL table is a VARCHAR2.
Workaround or Solution:
Change the database schema from CHAR to VARCHAR2. Using CHAR as a primary key is not recommended for the Oracle database.
9.2
Will not fix
CR295394
There is no annotation for EJB3 beans or Ejbgen that enables creation of a clusterable timer.
Workaround or Solution:
Create a weblogic-ejb-jar.xml file and put the <timer-implementation> element and corresponding values into the file.
10.0
Will not fix
CR295746
When accessing a Stateful Session Bean, method invocation must acquire a lock first. When concurrent access occurs, the lock acquisition will fail first so that a LockTimedOutException wrapped in an EJBException will be thrown, rather than a ConcurrentAccessException.
10.0
10.3
CR297054
Creating EJB 3.0 stateful session beans is much more expensive in terms of performance than creating equivalent EJB 2.1 stateful session beans.
Workaround or Solution:
Most of the performance difference can be regained by setting the system property weblogic.ejb30.enableproxypool=true. This system property is set to false by default. Note that it is not safe to turn on this flag if the bean has interceptors associated with it that contain state.
10.0
 
CR303273
Kodo's MappingTool cannot generate schemas for classes that use BLOBs in their primary key. BLOBs can be used in a primary key, but the schema must be defined manually. Note that support for BLOB columns in primary keys is not mandated by either the JDO or JPA specifications.
10.0
 
CR305173
Kodo components send log messages by default to the .out file of the server the bean is deployed to, rather than to a log file.
Workaround or Solution:
Configure the component log to a particular file.
10.0
10.3
CR306237
Extensions to the JPA metadata model can only be specified via annotations, and not via a structure similar to the orm.xml file defined by the specification.
Workaround or Solution:
To specify Kodo-specific metadata for your object model, either:
  • use the Kodo-specific annotations, or
  • convert your XML-based metadata to the JDO metadata format, which does support XML specification of extensions.
10.0
Will not fix
CR316709
When using the Sun VM, dynamic class enhancement sometimes does not occur.
Workaround or Solution:
Run the Kodo enhancer on your persistent classes after compilation but before deployment. You can do this with the kodoc script bundled with WebLogic Server, by using an ant task, or by running java org.apache.openjpa.enhance.PCEnhancer, passing your persistent classes as arguments to the process.
10.0
Will not fix
CR331713
The Weblogic Spring injection extension model doesn't support lookup method injection.
10.3
Will not fix
CR340082
The EJB container always uses an outer join in a CMP bean finder when eager relationship-caching is turned on. Typically, inner joins are faster to execute than outer joins with the drawback that inner joins do not return rows which do not have data in the corresponding joined table.
In WLS 10.3, a new configuration element, <use-inner-join>, has been added in weblogic-cmp-rdbms-jar.xml, as an attribute of <weblogic-rdbms-bean>, as shown here:
<weblogic-rdbms-bean>
<ejb-name>exampleBean</ejb-name>
...
<use-inner-join>true</use-inner-join>
</weblogic-rdbms-bean>
This element should only be set to true if the CMP bean's related beans can never be null or an empty set.
The default value of <use-inner-join> is false. If you specify its value as true, all relationship cache query on the entity bean will use an inner join instead of a left outer join to execute a select query clause.
10.0
10.3
CR341886
Currently, there is no way to serialize a business object in the EJB3 specification, which is different than a traditional component object.
Workaround or Solution:
When you need to serialize a business object, first invoke BusinessObject._WL_getBusinessObjectHandle() to get the business handle object, then serialize the business handle object. To recover from this serialization, just deserialize to get the business handle object, then invoke its getBusinessObject().
10.0
10.3
CR344667
Deserializing a JDO PersistenceManagerFactory in a managed environment may fail. The exception states that the javax.jdo.PersistenceManagerFactoryClass property is missing. Note that serializing a PersistenceManagerFactory should not generally be necessary in a managed environment.
10.3
 
CR347183
If the initial-beans-in-free-pool setting is greater than the max-beans-in-free-pool setting for an EJB, some of the EJBs instantiated during deployment are immediately discarded. This inefficiency can slow down the EJB deployment and the pool size may end up being smaller than was intended.
In WLS 10.3, the size of the free pool will be automatically increased for EJBs whose configuration is such that initial-beans-in-free-pool is greater than max-beans-in-free-pool.
10.0
10.3
CR348280
When cache miss ratio is too high, and you have enabled ready bean instances in cache, it can adversely affect performance.
Workaround or Solution:
For CMP beans, if you enable the feature in Data Direct, the container will not maintain the ready instances in cache. If the feature is enabled in Data Direct, the cache will only keep the active instances. A bean instance only has one state (active). Once the involved transaction is committed or rolled back, the bean instance is removed from active cache to the pool immediately.
10.3
 
CR354705
When switching JDK, all EJBs in the server will be automatically recompiled. All ejbc options which affect application behavior and which are not specified in deployment descriptors will be lost during automatic recompilation.
Workaround or Solution:
Settings which affect application behavior, such as the dispatch policy, should be configured in the deployment descriptors instead of the ejbc command line. This will ensure the settings will always be applied.
10.0MP1
 
CR355546
When filtering out just the org.apache.openjpa.* packages (but not the com.solarmetric.* and kodo.* packages), deployment of the application will fail with an exception message similar to this:
java.lang.IllegalArgumentException: interface
org.apache.openjpa.event.CallbackModes is not visible from class loader
Note that the particular class or interface cited in the exception message may vary.
Workaround or Solution:
When deploying an application-provided version of OpenJPA, all three Kodo-related packages must be filtered using the prefer-application- libraries directive:
<weblogic-application>
<prefer-application-packages>
<package-name>org.apache.openjpa.*
</package-name>
<package-name>kodo.*</package-name>
<package-name>com.solarmetric.*
</package-name>
</prefer-application-packages> </weblogic-application>
The Kodo and com.solarmetric packages must be filtered even if you want to disable all Kodo features (that is, only use OpenJPA).
Additionally, if you want to provide your own version of openjpa.jar, but use the WebLogic-provided Kodo jar, the application must still exclude kodo.* and com.solarmetric.*, and the application must bundle the Kodo jar from the WebLogic distribution.
Applications may also need to exclude serp.* and bundle their own version of it at some point in the future if new APIs or bug fixes are introduced in that codebase. However, there are no interdependencies with serp as there are between the org.apache.openjpa.*, kodo.*, and com.solarmetric.* packages.
10.0
 
CR355853
Indexes declared at the class level are not always created during schema creation.
Workaround or Solution:
Create the indexes manually after running the schema generation tools.
10.3
Will not fix
CR363318
OpenJPA throws an exception when @Id fields are also annotated as @Unique in some databases. Database primary keys are unique by definition. Some databases implement this by creating a unique index on the column.
Workaround or Solution:
Do not specify both @Id and @Unique on a single field.
10.3
Will not fix
CR363375
In prior releases, the DataCacheTimeout attribute was initialized and cached inside the ClassMetaData the first time it was accessed. After a configuration update, DataCacheTimeout still used the original cached value, although the configuration was updated.
This issue has been fixed in WLS 10.3. DataCacheTimeout will use the newly configured global default value, with one limitation. For those classes that have a @DataCache annotation with a DataCacheTimeout value equal to the old default value, the DataCacheTimeout value will be equal to the newly configured default. For example, if the global configuration is set to 10 seconds, and a @DataCache annotation override is 10 seconds, if the global default is updated to 20 seconds, the @DataCache annotation is also updated to 20 seconds because it is the same as the original global default value.
10.3
10.3
CR365276
Using the Javac compiler in WLS 10.3 can degrade performance in WLS 10.3.
Workaround or solution:
The JDT project provides a set of plug-ins that add the capabilities of a full-featured JAVA IDE to the Eclipse platform. Use the JDT compiler for improved performance as compared to Javac.
Also note that in WLS 10.3:
  1. Both JDT and Javac is supported in the EJB container. JDT is the default option.
  2. You can set up to use different compilers in appc and WLS:
  3. For appc, use -compiler, such as -java weblogic.appc -compiler javac ...

    For WLS, use the <ejb-container> tag in config.xml. For example:

    <ejb-container>
    <java-compiler>jdt</java-compiler>
    </ejb-container>

    Please refer to http://www.bea.com/ns/weblogic/920/domain.xsd for more information.

  4. If you use JDT in appc, only the -keepgenerated and -forceGeneration command line options are currently supported. These options have the same meaning as when using Javac. Additional options will be supported in the future.
10.3
 
CR366354
When using the Weblogic-supplied Sybase driver instead of the Sybase-supplied JDBC driver, attempting to insert a record in the database for an entity whose ID is auto-incremented can fail, as the default query to fetch the next available identity value always returns zero.
Workaround or solution:
Override the lastGeneratedKeyQuery property in the kodo.properties file as shown here:
openjpa.jdbc.DBDictionary: lastGeneratedKeyQuery='SELECT MAX({0}) FROM {1}'
10.3
 
CR366512
CR369221
Using generics in EJB will cause a problem in the following cases:
  1. When the business interface extends java.rmi.Remote, and extends some generic methods from a super class, the deployment will fail.
  2. When the business interface doesn't extend java.rmi.Remote, the invocation on the generic business methods will fail.
Workaround or Solution:
The first case is a limitation in WLS 10.3.
The second case can be resolved by downloading the needed classes from the server side. If network downloading is disabled, however, the invocation will fail still. If network downloading isn't permitted in the user's environment, it is recommended that you run appc first, then add the generated classes to the classpath of the client side.
10.3
 
CR368196
The default data cache's random eviction algorithm has changed to increase concurrency in OpenJPA 1.1.0, which is used in WebLogic Server 10.3. This algorithm change has also decreased the randomness of the eviction algorithms.
As a result of this change, the data cache eviction process is less random than it used to be, especially for high ratios (greater than 16 to 1) of eviction-to-insertion.
10.3
 
CR368558
The cache hit and miss counts may rise unexpectedly when manipulating entities without version data. The extra cache access occurs when the EntityManager closes and all contained entities are detached. Entities without version fields appear to the system to be missing their version data, and the system responds by checking their version in the cache before detachment.
Workaround or solution:
Entities with version fields or other version strategies do not cause extra cache access.
10.3
 
CR368579
CR371182
The Sun JVM included with WLS 10.3 is JDK 1.6. After upgrading to WLS 10.3 from previous releases which used JDK 1.5, you may see a java.lang.OutOfMemory Error: permGen space error when running existing applications.
Workaround or Solution:
Increase the MaxPermSize value for the Sun JVM.
10.3
 
CR369229
When trying to persist an empty byte array field within an entity to a Sybase database, the value gets stored as a NULL rather than as bytes. Therefore, the value is retrieved as NULL.
This is a limitation of the Sybase drivers, which convert the empty byte array to a NULL while storing it in the database. This happens with both Weblogic JDBC drivers as well as the proprietary Sybase drivers.
10.3
 
CR369427
When using the MySQL database, and OpenJPA is configured to automatically run the mapping tool at runtime and create tables within the default schema (for example, <property name='openjpa.jdbc.SynchronizeMappings' value='buildSchema'/>
<property name='openjpa.jdbc.Schema' value='<MySQL database name>' />), OpenJPA will try to create the table even if the table already exists in the database. A PersistenceException will be thrown to indicate that the table already exists and the table creation statement fails.
Workaround or Solution:
To avoid this problem, if you are using the MySQL database, don't configure OpenJPA to automatically run the mapping tool at runtime and specify the default schema at the same time.
10.3
 
CR370788
In previous WLS releases, it was possible that some classes could be loaded without enhancement if the module in which the persistence.xml was defined was declared after some of the dependent modules referencing those persistent classes (for example, if SB.jar is dependent on persistent classes defined in domain.jar, and domain.jar is declared after SB.jar in an EAR). In this case, the dependent module which does not have the persistence.xml declared in it gets loaded, and the persistent entity classes are not enhanced. This can result in the following error:
java.lang.NoSuchMethodError: pcGetManagedFieldCount
at com.bea.medrec.model.Prescription.
<clinit>(Prescription.java)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
Workaround or Solution:
In WLS 10.3, the classloader hooks for runtime enhancement for all the EJBs are installed first. The webapp modules are then processed in order after their classloader initialization completes. This resolves the issue.
There is a narrow possibility that the NoSuchMethodError message could still occur if all of the following conditions are true:
(a) a custom class loader configuration is defined, (b) two webapp modules share the same classloader and persistence classes, (c) one of the modules has persistence.xml and the other module doesn't, and (d) the webapp module that has the persistence.xml is not declared or occurs earlier in the order of the modules of the EAR. In this case, some entity classes may load without enhancements. To prevent this, the modules should be ordered in the opposite way.
10.3
10.3
CR373734
EJB applications that use IIOP and send JPA entities from the server to the client will fail during deserialization if the entities are Serializable (but not Externalizable) and do not declare a writeObject() method.
Workaround or Solution:
Add a writeObject() method to such entity classes. The write object can be trivial:
private void writeObject(java.io.ObjectOutputStream out)
throws IOException {
out.defaultWriteObject();
}
10.3
 

 


Examples

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR191354
Medical Records does not yet use deployment plans.
9.0 Beta
 
CR208965
The medrec.wls.config target in SAMPLES_HOME/server/medrec/setup/build.xml has a known issue with respect to security configuration.
9.0 Beta
Will not fix
CR226622
The ../xml/stax example contains two files with the same root but different extension: StreamParser.java and StreamParser.jsp. The samples viewer build, however, creates just one corresponding HTML file, rather than two for each type of file. In this case only the StreamParser.jsp file has an equivalent HTML file; the StreamParser.java file does not.
The problem occurs because of a setting in the build.xml file that controls the behavior of java2html to generate the files for the documentation.
When using java2html, the useShortFileName="true" parameter crops off the file extensions for the source files to create the file names for the HTML output files. If two files have the same name and different file extensions, whichever HTML file is generated last will overwrite previous ones.
Workaround or Solution:
Set the useShortFileName parameter to "false". This setting generates HTML files with the file extensions included in the name. The drawback to this solution is that every link that points to the HTML output file needs to be revised, regardless of whether the files in question were affected by the bug.
9.0
Will not fix
CR276963
When you start the medrec or samples domains, you may see a warning message similar to this:
<Warning> <WorkManager> <BEA-002919> <Unable to find a WorkManager with name weblogic.wsee.mdb.DispatchPolicy. Dispatch policy weblogic.wsee.mdb.DispatchPolicy will map to the default WorkManager for the application bea_wls_async_response>
This warning message appears in the standard output of the Console while starting a WebLogic Server sample application with an asynchronous Web Service deployed.
Workaround or Solution:
The warning is harmless and can be ignored.
9.2
Will not fix
CR317037
The documentation for the WebLogic Server samples assumes that the default WebLogic Server installation directory is weblogic100; instead, the actual default WebLogic Server installation directory is wlserver_10.0.
10.0
10.3

 


HTTP PublishSubscribe Server

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR359872
The HTTP PublishSubscribe server does not support authentication and authorization of the local client. The local client has full permissions to operate on channels of the HTTP PublishSubscribe server, which means the local client can create/delete channels and publish/subscribe events from channels.
10.3
 
CR364102
In a clustering environment, event messages published by a local client on a server can be received only by subscribed clients connected to the same server. These messages cannot be received by subscribed clients connected to other servers in the cluster.
10.3
 
CR371454
Event messages published to a channel by a local client will not go through the Message Filters configured to that channel.
10.3
 

 


Installation

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR307273
On installation, the installer may incorrectly report Insufficient disk space. This error is the result of using a version of the UNIX df tool that is incompatible with POSIX.
Workaround or Solution:
Use a version of df that is compatible with POSIX.
9.2
 
CR344551
The startWLS script, which has been deprecated since release 8.1, has been removed in WLS 10.3.
10.3
 
CR365263
On a Microsoft Vista system, the generic installer normally must be run with administrative permissions for all installation tasks to be successful. Administrative permissions are required if:
  • The product will be installed in a directory that requires special permission.
  • Start Menu items will be created for All Users.
  • Services such as Node Manager will be installed to start when the system boots.
Note that starting with Vista, an administrative user will not have full administrative authority until they approve the request via the UAC prompt.
Workaround or Solution:
  1. Create an administrative command window by right-clicking on the Command Prompt menu item.
  2. Select Run as administrator.
  3. Respond to the UAC prompt. A new command window will open with full permissions.
  4. Run the java -jar ... command as normal in this window.
10.3
 

 


Java EE

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR347787
FastSwap may relax the access modifiers of fields and methods. Private and protected members may be made public at runtime. This changes the behavior of reflection and may affect reflection-based frameworks such as Struts.
10.3
Will not fix
CR372525
FastSwap does not support redefinition of the Entity bean and ejbClass (Session/MDB). Therefore, any updates to entity classes will cause redefinition errors.
Workaround or Solution:
After updating an entity class, redeploy the application.
10.3
 

 


JDBC

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR272583
There is a performance degradation in the WebLogic Type 4 JDBC Driver for Oracle getAsciiStream() method call caused by fixes and enhancements to character set support in the driver. In general, the updated driver outperforms the previous version of the driver.
Workaround or Solution:
Use the getCharacterStream() method instead of getAsciiStream().
9.1
 
CR292068
The utils.Schema -s option has been removed. The -s option was for the obsolete WebLogic OCI driver, which did not accept the server name in the URL. All supported drivers now take all needed properties in the URL, so the -s option is no longer needed. It was removed because setting the server name in both the -s option and the URL caused problems.
Workaround or Solution:
Using the -s option will result in a warning saying that the -s option is no longer functional. If your connection fails, make sure all DBMS properties are in the URL.
10.0
NA
CR366527
The shutdown of a pool also kills its asynchronous connection testing process. When the pool is restarted, the asynchronous testing job does not restart, and the DataSource can't detect database failures by test frequency until WLS is rebooted.
This issue no longer happens, as asynchronous testing is always restarted when the pool is restarted.
10.0
10.3

 


JMS

Change Request Number
Description and Workaround or Solution
Found In
Fixed In
CR270257
Using the JMS WLMessageProducer forward() API on a newly created message causes a JMSClientException.
The JMS WLMessageProducer forward() API can only be used on unmodified received messages.
9.2
 
CR274706
Deployment descriptor validation fails when descriptor validation is enabled, and an EAR file contains only JMS modules.
Workaround or Solution:
Make sure that there is at least one J2EE specification-compliant module in the EAR.
9.2
Will not fix
CR277493
When multiple JMS producers use the same JMS Client SAF instance (within a single JVM), depending on the timing of the JMS SAF client creation, you might receive the following exception:
Error getting GXA resource [Root exception is weblogic.jms.common.JMSException: weblogic.messaging.kernel.KernelException: Error getting GXA resource]
Workaround or solution:
When using multiple JMS SAF client producers, try introducing a small delay between the creation of each new client.
9.2
Will not fix
CR278644
Reconnecting transactedSession.commit() or transactedSession.rollback()calls may throw exceptions more than once when reconnecting.
When a transacted session allows reconnect (that is, when a WLConnection.getReconnectPolicy() is not none), the first call to session.commit() or session.rollback() will throw an exception after the server WLConnection has reconnected after a failure. This is expected behavior. Unfortunately, the second call to commit()or rollback() may also throw an exception.
Afterwards the reconnected transacted session will work normally.
9.2
10.3
CR278960
There is no support for multi-byte characters in WebLogic Store file and directory names. For instance, when the WebLogic Server name has multi-byte characters, the default store cannot be created, and the WebLogic Server will not boot.
Workaround or solution:
Create WebLogic Servers without multi-byte characters in the path name and use that path name rather than the default store. Do not use multi-byte characters in the Weblogic Server name.
9.2
Will not fix
CR280041
When the WLConnection.getReconnectPolicy() method is set to all, JMS CLIENT_ACKNOWLEDGE sessions may sometimes throw an extra LostServerException when session.acknowledge() is called. This occurs after the JMS session has been reconnected to the server.
9.2
10.3
CR280150
When the WLConnection.getReconnectPolicy() method is set to all, JMS CLIENT_ACKNOWLEDGE sessions do not always throw a LostServerException when session.acknowledge() is called and there are unacknowledged, non-persistent topic messages.
9.2
10.3
CR309020
Certain JMS applications could cause a memory leak on a WebLogic server if periods (that is, dots) or slashes are present inside Connection IDs or Subscriber IDs. This issue typically occurs only for applications that both (a) continuously create and destroy durable subscriptions on topic destinations, and (b) specify a unique string prior to the last ‘.’ or ‘/’ in the Connection ID or Subscriber ID for each new durable subscription, instead of reusing strings from past destroyed subscriptions.
Workaround or Solution:
Use caution when specifying a period ‘.’ or slash ‘/’ in a Connection ID and Subscriber ID.
10.0
 
CR332252
When a FILE based persistent store is targeted to a MigratableTarget, it must have an explicit store <directory> parameter defined. This configuration requirement was not validate