bea.com | products | dev2dev | support | askBEA
 Download Docs   Site Map   Glossary 
Search

Release Notes

 Previous Next Contents View as PDF  

BEA WebLogic Integration Release Notes

BEA WebLogic Integration Release 7.0 Service Pack 7
Date: March 15, 2006

This document includes the following topics:

For updated release note information, go to the BEA documentation Web site at the following URL:

http://www.oracle.com/technology/documentation/index.html

 


What's New in WebLogic Integration 7.0 SP7

In addition to delivering fixes to known problems, the following enhancement has been added for tracking and managing workflows.

Parent-child relationships between workflow instances when a child workflow was started via an internal JMS message (post XML Event action) can now be tracked because the wli.bpm.server.trackeventparent environment property has been added. To enable tracking, set this system property to true on the java command line used to start WebLogic Server as -Dwli.bpm.server.trackeventparent=true

In addition, parent-child instances can now be managed because the -includeChildren and -checkParent options have been added to the BPMAdmin utility. The includeChildren option causes child instances of a workflow to be archived or deleted along with the parent. The checkParent option verifies that the parent instance has completed before allowing the deletion of a child instance.

 


Deprecated Items in WebLogic Integration 7.0 SP7

The BPM-Workshop sample has been deprecated in WebLogic Integration 7.0 SP7.

 


Problems Fixed in WebLogic Integration 7.0 SP7

The following table lists selected problems fixed in BEA WebLogic Integration 7.0 SP7, including a CR (Change Request) number for each problem. For a complete list of problems fixed in BEA WebLogic Integration 7.0 SP7, contact BEA Customer Support.

Table 1. Problems Fixed in BEA WebLogic Integration 7.0 SP7

Change Request
Number

Description

CR173851

Deadlocks may sometimes occur during event processing. The event processor has built in retry capabilities to take care of this situation.

Now, the number of retires and the delay between retries may be specified on the command line as bpm.eventlistener.MaxDeadlockRetries and bpm.eventlistener.DeadlockDelay JVM environment variables.

The deadlock delay is the number of milliseconds the thread will sleep before attempting to reprocess the event. Example:

-Dbpm.eventlistener.MaxDeadlockRetries=5

-Dbpm.eventlistener.DeadlockDelay=750

In this example, the thread will sleep for 750 milliseconds after encountering a deadlock and then attempt to process the event again. This will be repeated 5 times, for a total of 6 attempts (the original plus the 5 retries).

The default values for these variables are 3 and 1000 respectively.

CR189762

When there is a database failure, some ebXML public workflows may not start even after the database recovers. When this problem occurs, the client trading partner appears to be "stuck" while attempting the initial B2B conversation. In addition, the client trading partner may also receive a 400 HTTP status.

In such a scenario, ensure that the client trading partner posts a new request and performs whatever cleanup that is necessary to abandon the old request.

 


Known Limitation in WebLogic Integration 7.0 SP7

This section describes known limitations in the BEA WebLogic Integration 7.0 SP7 software.

Table 2. Known Limitations in BEA WebLogic Integration 7.0 SP7

1

CR196373


Problem

WebLogic Integration B2B Server may sometimes fail to start on managed server recovery. The following entries are then made in the log file:

<Timestamp> <Error> <B2B> <000000> <<B2BIntegration-Server> 
ERROR: WebLogic Integration - B2B Server failed to start with null.>
<Timestamp> <Error> <B2B> <000000> <<B2B Server> ERROR: 
WebLogic Integration - B2B Server failed to start with com.bea.b2b.server.InitException.>

Usually, this failure is preceded by some OracleXAResource.checkError exceptions. However, you may ignore these exceptions.

The server will continue to start; however, no new B2B messages will be accepted. Recovered ebXML messages will fail with the following error:

<Timestamp> <Error> <B2B> <ceraphin.bea.com> 
<managed2_hwbwl98> <ExecuteThread: '12' for queue: 'default'> <kernel identity> <> <000000> 

<<EBXML-Protocol> ERROR: Exception During send message

bcManageProvideOrder-86420-1097604825564-616-86420-1097605014693-408:

java.lang.NullPointerException.>

Platforms

All

Workaround

Restart the server within the B2B and JMS retry window so that full recovery can take place.

2

CR193997


Problem

It can take several minutes for in-doubt transactions to show up in Oracle. There may be a race if recovery has started prior to Oracle detecting the loss of the transaction messages.

Platforms

All

Workaround

Wait several minutes before starting recovery either by restarting the server or by doing a JTA migration.

After initiating recovery, if you check the Oracle dba_2pc_pending table and see a record associated with the failed server that has a timestamp earlier than the time when recovery was initiated, recovery will fail. You must then restart the server.

 


Migration from WebLogic Integration 7.0SP5 and SP6 to WebLogic Integration 7.0SP7

To upgrade from WebLogic Platform 7.0 SP5 and SP6 to WebLogic Platform 7.0 SP7:

  1. Run platform707_upgrade_win32.exe.

    Note: For Solaris platform, run platform707_upgrade_solaris. If you used JRocket VM, you need to run platform707_upgrade_jrockit70sp7_win32.

    2. BEA Installer - WebLogic Platform 7.0.7.0 wizard appear. Click Next.

  1. Specify the location of the existing BEA home directory and click Next.

    This location is the directory in which you installed the SP5 or SP6 version of WebLogic Platform.

The existing installation is upgraded. Click Done.

Migrating a domain

Since there has been a schema change, if you try to start your domain now, you will get the following exception:

TargetException:
Unable to deploy EJB: EventKeyRO from wlpi-ejb.jar:
The database table: EVENTKEY does not contain the columns: VALUEMATCHONLY. Please consult your database mappings in the weblogic-cmp-rdbms.xml deployment descriptor and ensure these match your database schema.

You need to upgrade the databases for each of your domains.

To upgrade your databases:

  1. From the command prompt, navigate to the BEA_HOME\weblogic700\ integration\ directory.

    BEA_HOME is the directory in which you installed the earlier version of WebLogic Platform.

  2. Run setEnv.cmd.

  3. Navigate to the BEA_HOME \weblogic700\server\bin\ directory.

  4. Type migrate.cmd BEA_HOME\user_projects\<domain name> and press Enter.

    You should see the BUILD SUCCESSFUL message.

  5. Navigate to the BEA_HOME\weblogic700\integration\bin directory.

  6. Type migratedb.cmd followed by the name of the database that is associated with the domain and press Enter.

    For example, migratedb.cmd oracle

    You should see the Table altered. message on the screen.

  7. Repeat steps 3 - 6 for each of the domains.

You have now migrated all you domains.

 


About WebLogic Integration 7.0 SP6

WebLogic Integration 7.0 Service Pack 6 (SP6) is a new service pack release of WebLogic Integration. While WebLogic Platform 7.0 SP6 as a whole contains significant changes, this service pack does not contain significant changes for WebLogic Integration.

WebLogic Integration 7.0 SP6 may be required for other specific reasons, for example to apply WebLogic Server 7.0 SP6 maintenance. If you do decide to upgrade to WebLogic Integration 7.0 SP6, then, as with any service pack upgrade, it is good practice and we recommend that customers thoroughly test their application with the new service pack before attempting to upgrade.

WebLogic Integration 7.0 SP6 provides the functionality needed to integrate business systems within an enterprise, and to link those systems in a collaborative arrangement with an organization's trading partners.

Underlying this functionality is the industry-leading J2EE application server, BEA WebLogic Server, which provides the critical infrastructure needed to develop integrated solutions that support transaction management, security, fault tolerance, persistence, and clustering.

WebLogic Integration 7.0 SP6 supports end-to-end business integration by providing functionality in the following areas:

 


What Is New and Improved in WebLogic Integration 7.0 SP6

BEA WebLogic Integration 7.0 SP6 delivers fixes to known problems. No new features or enhancements are included in this release.

 


Platform Support and System Requirements

For information on platform support, including hardware and software requirements, see the Supported Platforms page at the following location:

http://download.oracle.com/docs/cd/E13196_01/platform/suppconfigs/configs70/70_over/overview.html

For additional information about WebLogic Platform as well as any release notes on installing and configuring WebLogic Integration, see the WebLogic Platform release notes at the following URL:

http://download.oracle.com/docs/cd/E13196_01/platform/docs70/relnotes/index.html

 


Related Software

The following sections describe software that you may want to use with WebLogic Integration.

Using BEA WebLogic Integration - Business Connect 8.1.2

WebLogic Integration - Business Connect enables you to securely exchange large volumes of documents with your trading partners. WebLogic Integration - Business Connect packages documents in secure envelopes that are transmitted among trading partners according to schedules.

Detailed information about this component of WebLogic Integration is available at the following URL: http://download.oracle.com/docs/cd/E13215_01/wlibc/docs81/install/tutorial.html#1093501.

Using BEA EDI Connect for WebLogic Integration

EDI Connect for WebLogic Integration software enables you to define your EDI-to-XML document maps. It also manages your trading partner relationships, and it handles the transmission and receipt of EDI messages.

EDI Connect for WebLogic Integration is available as a separately purchased add-on for WebLogic Integration customers. Delivered as Power.Enterprise!, it includes both client and server components. You can download this add-on from the BEA Download Center for evaluation purposes. You can find this software at the following URL:

http://commerce.bea.com/showallversions.jsp?family=WLI

For more information, see the documentation packaged with the EDI Connect for WebLogic Integration software.

Using BEA WebLogic Adapters

At the time of this release, all of the BEA WebLogic Adapters version 7.x have been certified for use with WebLogic Integration 7.0 SP6.

 


Best Practices

This section contains the following best practices and usage information about WebLogic Integration components and functions:

NewSize JVM Option and Performance

Some performance benchmarks show improvement when the -XX:NewSize JVM option is used. For more information, see "Tuning Performance" in Deploying BEA WebLogic Integration Solutions.

Recommended Length of BEA_HOME Environment Variable

The definition of the BEA_HOME environment variable should be limited to a range of 10 to 12 characters.

Support for Null Variables

WebLogic Integration 7.0 supports null values in variables through the wli.bpm.server.evaluator.supportsNull option in the startWebLogic script.

When this option is set to true, all variables are initialized to a null value. When this option is set to false, all variables are initialized to their default values. The default setting for this option is false.

For details about this option, see Starting, Stopping, and Customizing BEA WebLogic Integration.

Addressed Messaging

Use addressed messaging whenever you want guaranteed message delivery. For details about this option, see "Addressed Messaging" in "Defining Actions" in Using the WebLogic Integration Studio.

Nested Workflows

Nested workflows must be analyzed for scalability because they can lead to transaction timeouts. The parent of a transaction encompasses all children.

Calling Programs Using SendXMLToClient

Be careful about enabling access to a shell program, such as cmd.exe, because doing so effectively defeats the SecurityManager, making it possible for a malicious workflow to launch anything on the client computer. For better security, list only those programs needed to execute the workflow.

WLPISec.properties contains a list (one item per line) of unqualified executable files, such as the following:

BPM Plug-Ins in a UNIX Environment

The plug-in architecture uses the Image object from the AWT library. As a result, the server needs to have the DISPLAY environment variable set in order to create this object. The plug-in simply sends the image file across the wire and allows the client to create the Image object.

When a UNIX system is used, an issue arises. Because the plug-ins make a connection to the Xwindow server, logging off can bring WebLogic Server down, as well, even if you start it with nohup and run it in background mode. For this reason plug-ins should never instantiate any class that needs the Xwindow server.

Initializing the Database

If Initialize Database is set to yes on the import tab under Configuration on the B2B Console, then when you subsequently import repository data, existing data is destroyed. Be careful about setting the Initialize Database parameter to yes. This issue is being tracked as CR077846.

 


Deprecated Items in WebLogic Integration 7.0SP6

A deprecated item is one that will be removed from the product in a future release. The following items were deprecated as of WebLogic Integration 7.0:

The following table describes the migration options for deprecated features.

Users of this feature . . .

Can migrate to . . .

XOCP protocol

ebXML or RosettaNet

XOCP BPM plug-in

cXML protocol

B2B logic plug-ins

No equivalent functionality

Messaging API

ebXML JMS interface or BPM workflows

Trading partner zeroweight client

A JSP tag library with Portlet and HTML-based Zeroweight trading partner clients will be made available in a future release.

Swing-based BPM Worklist client

A JSP-based Worklist client is available with the WebLogic Integration SP6 release.

Note: Only the current Java Swing user interface is being deprecated. The Worklist API is not being deprecated.

In addition, several samples rely on deprecated features, such as the XOCP protocol. The following samples fall into this category and are deprecated as of the 7.0 release of WebLogic Integration:

In WebLogic Integration 7.0 SP4, these following deprecated samples have been removed from the Samples Launcher Page:

 


Problems Fixed in WebLogic Integration 7.0SP6

The following table lists selected problems fixed in BEA WebLogic Integration 7.0 SP6, including a CR (Change Request) number for each problem. For a complete list of problems fixed in BEA WebLogic Integration 7.0 SP6, contact BEA Customer Support.

Table 3. Problems Fixed in BEA WebLogic Integration 7.0 SP6

Change Request
Number

Description

CR121357

TimeListenerBean onMessage does not remove all WorkflowProcessor beans. The problem is that the workflow processor bean instance is not removed inside this do..while loop, and the workflowprocessor.remove() call is called only once when exiting the onMessage method. This means that, in a situation where instanceid does not have a matching workflow instance, 20 WorkflowProcessor bean instances are created and only the last one of them is removed. This problem was resolved with an engineering code change.

CR122714

RDBMS adapter throws exception outside of the <eda> structure when:

a) the incorrect user name/password is entered

b) the incorrect URL is entered

c) a non-existing stored procedure is used

Customer needs to see the adapter return an <eda> XML structure under all circumstances. Any error code and information should be returned within this structure. This problem was resolved with an engineering code change.

CR124683

CR182704

Customer has two cluster domains: domain1 and domain2. Each domain has two managed servers; each managed server has two JMS servers (one for WLI-specific work and another for the JMS messaging bridge). The sending application sets the JMSReplyTo field as a distributed destination on domain1, and a message travels over the messaging bridge and ends up in the JMSStore on domain2. In the meantime, the domain2 managed server is killed by Kill-9. When the managed server restarts, the JMSServer attempts to locate the ConfigMbeanName for the distributed destination member instance that was written to the JMSStore in domain2 but cannot locate this name because it belongs to domain1 and the JMSServer is throwing a NullPointerException. This problem was resolved with an engineering code change.

CR129512

The customer has requested additional logging functionality to include:

a) a log of the input XML message from the event processor for a start or event node

b) a log of a timer message when it fires

The added functionality was provided with an engineering code change.

CR133445

The following intermittent license error occurs at run time: java.lang.RuntimeException: License class files have been tampered. This problem was resolved with an engineering code change.

CR134388

The Workflow label is not getting updated in the worklist. This problem was resolved with an engineering code change.

CR135860

Customer has two configured queues:

To send the correct answer to the client, the customer is using the attribute JMSCorrelationID in the JMS mex. The activated workflow takes the attribute JMSCorrelationID from the returned mex to use in the answer. This does not work and the client continues to wait. This problem was resolved with an engineering code change.

CR181920

TimeListenerBean consumes a failed message when the WLI database is not running. As of 7.0 sp6, a new system property allows timed events to be rolled back for JMS re-delivery, allowing timed events to be recovered in the event of a database crash. To turn on the feature, set: -Dwli.bpm.server.timeprocessor.rollbackafterretry=true

Note however that if workflows are designed such that it is possible for there to be timers pending when the workflow completes, and the completed instance is deleted before the timer message is delivered, the timer messages will be retried by JMS. These event messages would end up in the failure queue when, in fact, they should have been consumed.

CR182556

CDATA is not properly handled or parsed by the XPATH expression inside the workflow. The problem was fixed with an engineering code change whereby the CDATA value appears properly when being handled by the XPATH expression in a workflow.

CR182709

While analyzing system performance, a lot of threads were waiting in synchronization in XMLParserHelper class. This problem was resolved with an engineering code change.

CR183277

Timed event is performed abnormally when it is reactivated or edited. Timed started workflows are triggered whenever that workflow is saved in studio. Time started workflows should start only when their "Start Date Expression" specifies they should start. This problem was resolved with an engineering code change.

CR184894

Over-synchronization occurs when moving messages from the AI to BPM queue. This problem was resolved with an engineering code change.

CR187045

Sometimes when Oracle listener is killed and re-started later, the following exception is seen: Setting Transaction isolation to TRANSACTION_READ_COMMITTED. This problem was resolved with an engineering code change.

CR188141

Issues occurred when adding re-routes using Java API. The Java API that is being used is similar to <WLI_HOME>/samples/bpm_api/commandline/CLStudio.java.

Engineering provided a new debug flag for re-routes. It is controlled with the following boolean Java system property: com.bea.wlpi.reroute.debug

CR188356

TimedEvent failed to continue after Oracle server was rebooted. This problem was resolved with an engineering code change.

CR193316

A receiver stops processing messages when a RedeliveryLimit is configured and the number of times the RedeliveryLimit is reached is greater than the MessagesMaximum setting on the ConnectionFactory.

For example: RedeliveryLimit=0, MessagesMaximum=10. Receiver receives a message and calls session.recover() 10 times. The receiver will stop processing messages and the console will show 10 pending messages.

Code was added to adjust the window counter when a message is removed from the queue because the RedeliveryLimit had been reached.

CR193661

iWay Adapter (FILE & RDBMS) Application views Deployment/Undeployment is sometimes unreliable. This problem was resolved with an engineering code change.

CR200912

The BPMAdmin utility was unable to export a business calendar and was giving the following exception:

javax.ejb.CreateException: The system could not find the specified business calendar.

This problem was resolved with an engineering code change.

CR202956

The WLI HTTP plugin randomly throws the following exception: no templatedef found. The exception occurs when the post events pumped are concurrent and high in number to a workflow, which is configured to start on a HTTP event. This prevents the workflow from processing further events. This problem was fixed with an engineering code change containing a replacement WAR and JAR for the HTTP plugin.

 


Known Limitations in WebLogic Integration 7.0SP6

This section describes known limitations in the BEA WebLogic Integration 7.0 SP6 software.

Change Requests

The following table describes limitations that are documented in formal change requests (CRs). Whenever available, a recommended workaround is provided.

1

CR063709
CR075768


Problem

The RosettaNet Security Sample throws an exception when a single database is used for two peers and the database tables for peer1 are overwritten by peer2. The default database for the RosettaNet 2.0 Security sample cannot be changed easily from PointBase. Unlike the other B2B samples, the RosettaNet 2.0 Security sample does not support the use of the WebLogic Integration Database Wizard to switch the database to be used with the samples domain.

Platforms

All

Workaround

If possible, use different databases for different peers. For example, have peer1 use MSSQL and peer2, Oracle. If you must run two peers on one machine and both peers use the same database server, make sure that:

Specify every database you use for this sample on the RunRN2Security command line, as follows:

RunRN2Security database_for_peer1 database_for_peer2

Edit the setDBVars and setDBVarsExt files to set or change the database connection parameters. The setDBVars and setDBVarsExt files are located in the following locations:

In both pathnames SAMPLES_HOME is the samples installation directory and database_type is the type of database to which you are connecting. Database types are oracle, mssql, pointbase, and sybase.

2

CR076994


Problem

In a cluster, both the Administration and Managed Servers require installation of WebLogic Integration.

Platforms

All

Workaround

WebLogic Integration users must install WebLogic Integration on the Administration Server as well as the Managed Servers.

3

CR079611


Problem

In the Studio Routing window, when creating a new WebLogic Server group and mapping a new BPM role to that group, the list of roles does not update with the new role.

Platform

Windows

Workaround

Shutdown Studio and restart it; the new role will be visible.

4

CR081119


Problem

The default installation includes the protocol definition for RN-Hub. However, RN-Hub support for RosettaNet is not supported.

Platforms

All

Workaround

None

5

CR090195


Problem

The Event list in the Start and Event node is not refreshed when a plug-in is loaded or unloaded while workflows that do not refer the plug-in is open.

Platforms

Windows

Workaround

Close all open Workflow templates before making plug-in state change.

6

CR092283


Problem

Error when creating a BPM Plug-In for AI in an existing domain. The configDomain script fails when the BPM Plug-In already exists in the domain's config.xml file:

<WLI_HOME>\project\ai\ai_resources.xml:295: Unresolved
module reference encountered: EJBComponent:WLI-BPM Server
in ModuleComponent/BPM_Plugin

This error occurs because the configDomain script adds an entry of BPM Plug-in for Application Integration in config.xml.

Platforms

Windows

Workaround

Do not to select the BPM Plug-in if it already exists in a config.xml file of a domain in which it is being created.

7

CR093191


Problem

WebLogic Workshop users cannot create an application view control for the 7.0 SP2 RDBMS adapter.

Platform

All

Workaround

Please contact BEA Customer Support.

8

CR094433


Problem

Incomplete workflow instances may occur if JTA and JMS migration is done using HTTP protocol for the failover.

Platform

All

Workaround

Use the t3 protocol.

9

CR094470


Problem

If config.xml contains <StartupClass> or <ShutdownClass> modules, the configDomain script adds a LoadOrder attribute to it, which will make the server unbootable.

Platform

All

Workaround

In config.xml, remove the LoadOrder attribute entry for the <ShutdownClass> and <StartupClass> before starting the server:

<ShutdownClass Arguments="mode=TERMINATE"
LoadOrder="800"
ClassName="com.bea.b2b.server.Shutdown" Name="WLCShutdown"
Targets="myserver"/>
<StartupClass ClassName="com.bea.lwclient.Startup"
Name="LwcStartup"
Targets="myserver"/>

10

CR095276


Problem

In Domain Wizard generated EAI, BPM, WLI domains, the default web application directory name uses myserver when users give their own name for an admin server. This happens during the domain generation and the admin server fails to boot with following error:

<Error> <Management> <141006> <Application
eaiC:Name=DefaultWebApp_<user_specified_name>,
Type=Application not found at <user_domain>\applications\
DefaultWebApp__<user_specified_name>>

Platforms

All

Workaround

  1. Change the directory name from applications/DefaultWebApp_myserver to DefaultWebApp_<user_specified_name> under applications/.

  2. In config.xml, change any DefaultWebApp_myserver to DefaultWebApp_<user_specified_name>.

11

CR095278


Problem

Existing workflows using Application Integration do not work in the sample DBMS Adapter.

Platforms

All

Workaround

For complex applications, re-export the whole set of related objects that go with the workflow and re-import.

For simple applications, change the request XML documents to uppercase.

12

CR096379


Problem

If you are using RDBMS Realm, the SchemaProperties attribute of RDBMSRealm element in the config.xml of the Domain Wizard generated wlidomain is incomplete.

Platforms

All

Workaround

Append the following text to the end of the line starting with "SchemaProperties=", right after "PERMISSION FROM AC", without a space.

PERMISSION FROM ACLENTRIES WHERE PERMISSION = ?; 
getUser=SELECT USERID, PASSWORD FROM WLSUSER WHERE
USERID = ?;deleteGroup2=DELETE FROM ACLENTRIES WHERE
PRINCIPAL = ?;deleteGroup1=DELETE FROM GROUPMEMBER
WHERE GROUPID = ?;deleteUser1=DELETE FROM ACLENTRIES
WHERE PRINCIPAL = ?;getAclEntries=SELECT NAME, PRINCIPAL,
PERMISSION FROM ACLENTRIES WHERE NAME = ? ORDER BY
PRINCIPAL;getGroupMembersGroups=SELECT GROUPMEMBERID,
GROUPID FROM GROUPMEMBER WHERE GROUPID = ?;getGroups=SELECT
GROUPID FROM WLSGROUP ORDER BY GROUPID;getGroup=SELECT
GROUPID FROM WLSGROUP WHERE GROUPID = ?;getUsers=SELECT
USERID, PASSWORD FROM WLSUSER ORDER BY USERID"/>

13

CR119473


Problem

In the Sample Applications menu page of the samples launcher, selecting the link to the BPM-Workshop sample causes a browser error (Error 404--Not Found) on UNIX systems due to case sensitivity issues. The Sample Applications menu page is located as follows:

SAMPLES_HOME/integration/config/samples/applications/
DefaultWebApp_myserver/menu.html

Platforms

UNIX

Workaround

Rename the BpmWlwSampleDesc.html file to BPMWLWSampleDesc.html in the following directory:

SAMPLES_HOME/integration/config/samples/applications/
DefaultWebApp_myserver

 

14

CR134353



Problem

When a WebLogic Integration domain is XA-enabled an oracle.jdbc.xa.OracleXAException may be thrown from oracle.jdbc.xa.client.OracleXAResource.commit calls during a server restart after a crash. The exception is benign and indicates the attempted recovery of transactions that committed before the crash happened but before the server transaction logs got a chance to record these commits.


Platforms

All


Workaround

None

15

CR135996



Problem

In the BPM-Workshop inter operability sample, setting the ListenAddress to localhost causes the test to fail and show incomplete links.


Platforms

All


Workaround

Leave the ListenAddress blank when configuring the platform domain.

16

CR137004



Problem

The XML response from events and services may contain irrelevant values when the isNull Attribute is retrieved as true.


Platforms

All


Workaround

None, ignore these values.

17

CR177271



Problem

During the server startup, informational messages about SAXParserExceptions from malformed web.xml for the HTTP plugin may be seen in the server logs.


Platforms

All


Workaround

None, ignore these values. They are benign. These exceptions have no effect on the functionality of the HTTP plug-in.

18

CR125694



Problem

RunSamples does not run on Windows XP.


Platforms

Windows XP


Workaround

Add -Dos.name="Windows 2000" to the java start up line in the script.

Using WebLogic Integration in a Cluster with an Oracle Database

If using WebLogic Integration in a cluster with an Oracle database, you must modify the deployment descriptor to prevent concurrent updates to a particular workflow instance. The deployment descriptor changes affect the WorkflowInstance entity bean. Make the following modifications:

Note: If you make these changes to an existing WebLogic Integration cluster domain, the staging area for each managed server must be deleted in order to force this change to take effect.

An example of the updated weblogic-ejb-jar.xml file, which is located in the <BEA_HOME>/weblogic700/integration/lib/wlpi-ejb.jar/META-INF directory, follows:

Listing 1 Concurrency Strategy Update

<weblogic-enterprise-bean>
<ejb-name>WorkflowInstance</ejb-name>
<entity-descriptor>
<entity-cache>
<max-beans-in-cache>100</max-beans-in-cache>
<idle-timeout-seconds>600</idle-timeout-seconds>
<concurrency-strategy>Database</concurrency-strategy>
<cache-between-transactions>False</cache-between-transactions>
</entity-cache>

Listing 2 Transaction Isolation Update

<transaction-isolation>
<isolation-level>TRANSACTION_READ_COMMITTED_FOR_UPDATE</isolation-level>
<method>
<ejb-name>WorkflowInstance</ejb-name>
<method-name>*</method-name>
</method>
</transaction-isolation>

Studio Workflow Window Flash

In the Studio Workflow Design window, various actions such as copying and pasting nodes cause the workflow window to flash. This is a known limitation, reported as CR090095.

DB2 Option Not Present in Domain Wizard

Because WebLogic Integration does not support DB2, when using the domain wizard (wliconfig) to create a domain using the wlidomain, bpmdomain, or eaidomain templates, DB2 is not offered as an option for Create Database and Switch Database operations. This issue was reported as CR082305. For information on platform support, including hardware and software requirements, see the Supported Platforms page at the following location:

http://download.oracle.com/docs/cd/E13196_01/platform/suppconfigs/configs70/70_over/overview.html

BPM Command Line Utility Seems to Hang

The BPM command line tool seems to hang in some cases. This is caused by the length of time the operation takes to complete. The tool is not hanging, it is processing and will return.

 


Documentation Additions, Changes, and Corrections

This section provides additions, changes, and corrections to the WebLogic Integration documentation available on the BEA documentation Web site at the following URL:

http://www.oracle.com/technology/documentation/index.html

Workaround for Problems with Application View Deployment in a Closed Environment

Problems occur when deploying an application view in a closed environment where there is no access via http to the machine running WebLogic Server. An exception is thrown because the system is unable to upload weblogic-ra.xml and the WLAI Upload EJB attempts to perform a validating parse of the uploaded XML. The workaround is to use the WebLogic Server Administration Console to manually add the DTD to the XML registry, so that the server can resolve weblogic-ra.xml locally.

To add weblogic-ra.xml to the XML registry:

  1. Invoke the WebLogic Server Administration Console.

  2. Click to expand the Services—>XML—>WLPIXML_Registry—>XML Spec Entries node in the left-hand pane.

  3. Click Configure a New XMLEntitySpecRegistryEntry in the right pane.

  4. Enter -//BEA Systems, Inc.//DTD WebLogic 7.0.0 Connector//EN in the Public ID field.

  5. Enter http://www.bea.com/servers/wls700/dtd/weblogic700-ra.dtd; in the System ID field.

  6. Enter weblogic700-ra.dtd in the Entity URI field.

  7. Click Create.

  8. Extract weblogic700-ra.dtd from the weblogic.jar file to the following directory:
    DOMAIN_HOME/xml/registries/WLPIXML_Registry

    where DOMAIN_HOME indicates the complete path to the root of a domain.

This issue was reported as CR093035.

Changed Link to WebLogic Server Security Document

In "Steps for Creating and Configuring Keystores" (under Configuring the Keystore in Implementing Security with B2B Integration) the link to Security Fundamentals in Programming WebLogic Security is no longer correct. The document with the incorrect link is at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/b2bsecur/keystore.htm

The Security Fundamentals section is now in Introduction WebLogic Security at the following URL:

http://download.oracle.com/docs/cd/E13222_01/wls/docs70/secintro/concepts.html

This issue was reported as CR102614.

Correction to BPM Plug-In Sample Instructions

In Programming BPM Plug-Ins for WebLogic Integration, in BPM Plug-In Sample, locate "Running the Plug-In Sample" at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/devplug/example.htm

Executing the instructions as shown result in the following error on UNIX systems:

Exception in thread "main"
java.lang.NoClassDefFoundError:com/bea/wlpi/tour/po/plugin/
StartOrderDriver

Use the following information for Step 4b:

b. On UNIX, execute the following commands to set the environment and CLASSPATH variable, and execute the StartOrderDriver script:

$WLI_HOME/setenv.sh
CLASSPATH=
$WL_HOME/lib/weblogic.jar:$WLI_HOME/lib/wlpi-ejb.jar:
$WLI_HOME/lib/sampleplugin-ejb.jar
$JAVA_HOME/bin/java -classpath "$CLASSPATH"
com.bea.wlpi.tour.po.plugin.StartOrderDriver
t3://localhost:7001 joe password

This issue was reported as CR112459.

Corrections to Running the Data Integration Plug-In Sample Applications

In Using the Data Integration Plug-In at "Running the WebLogic Integration Sample Applications" under "Step1. Start the Sample Application Launcher," Figures 3-1 and 3-2 are updated, as shown in Figure  1 and Figure  2. These figures are located at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/diplugin/wlpisamp.htm

Note: These figures reflect the removal of the deprecated samples (Hello Partner, Channel Master, and Messaging API) from the left pane in the Samples Launcher Page and the correction of a typographical error:

Figure 1 Change to Figure 3-1 Sample Application Launcher


 

Figure 2 Change to Figure 3-2 Data Integration Servlet Sample Page


 

In Using the Data Integration Plug-In at "Running the WebLogic Integration Sample Applications" under "Running the EJB Sample," the instructions for running the EJB sample using the command line should reflect the current definition of the WL_HOME environment variable. These instructions are located at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/diplugin/wlpisamp.htm

Locate the subsection titled "From the Command Line." Step 3 in the procedure should read as follows:

3. Set the environment variable WL_HOME to the pathname of the directory in
      which WebLogic Server is installed on your system. For example:

set WL_HOME=c:\bea\weblogic700\server

This correction was reported as CR112455.

Template Definition Compatibility

No compatibility matrix exists for template definitions created and used across different releases of WebLogic Integration 7.0.

Table  4 provides the missing information. For example, the first row in the table indicates that template definitions created in WebLogic Integration 2.1 SP2 are usable in all versions, whereas the second row indicates that a template definition created in WebLogic Integration 7.0 GA is not usable in the WebLogic Integration 2.1 SP2 release.

Table 4. Compatibility of Template Definitions

Version

Compatible with


2.1 SP2

7.0 GA

7.0 SP1

7.0 SP2

7.0 SP4

7.0 SP5

7.0 SP6

2.1 SP2

Yes

Yes

Yes

Yes

Yes

Yes

Yes

7.0 GA

No

Yes

Yes

Yes

Yes

Yes

Yes

7.0 SP1

No

Yes

Yes

Yes

Yes

Yes

Yes

7.0 SP2

No

No*

No*

Yes

Yes

Yes

Yes

7.0 SP4

No

No*

No*

Yes

Yes

Yes

Yes

7.0 SP5

No

No*

No*

Yes

Yes

Yes

Yes

* This is due to a bug in 7.0 GA and 7.0 SP1.


 

This issue was reported as CR084741.

Updates to Importing to the B2B Console

In Administering B2B Integration in "Importing to the B2B Console" under Figure 4-4 B2B Import Tab (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/b2badmin/impexp.htm), it states:

Warning: If the Initialize Database option is selected, then when you subsequently import repository data, existing data is destroyed. Be careful about selecting the Initialize Database option.

This warning is changed to say:

Warning: If the Initialize Database option is selected, then when you subsequently import repository data, the existing data is destroyed. As a result, the imported config file must contain all needed information. There should be no unresolved reference in the config file. Be careful about selecting the Initialize Database option.

Also in Administering B2B Integration in "Importing to the B2B Console" under Step 11. Select Yes or No for Business Connect Import File (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/b2badmin/impexp.htm), add the following note:

Note: When importing a Business Connect trading partner, you must set the Initialized Database radio button to False.

This issue was reported as CR089818.

Addition to Using a Custom Exception Handler

In Learning to Use BPM with WebLogic Integration in "Using a Custom Exception Handler" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/bpmtutor/ch6.htm) under the bullet list, add the following note:

Note: If an exception occurs from within the Custom ExceptionHandler, the system ExceptionHandler is invoked exiting the workflow.

This issue was reported as CR089006.

Location of configDomain Documentation

The configDomain.cmd is not documented in the BEA WebLogic Integration documentation. You can download documentation from the BEA dev2dev Web Site at the following URL:

http://dev2dev.bea.com/codelibrary/code/appview_control.jsp

For domains created using a template other than the WebLogic Platform or WebLogic Workshop template in the Configuration Wizard, WebLogic Integration provides a script named configDomain that configures a domain to host the Application Integration component of WebLogic Integration and also configures Application Integration to use the proper database in your domain.

This issue was reported as CR090681.

Correction to Template Definition Information

The following correction should be made to Using the WebLogic Integration Studio in the fourth paragraph under "Working with Template Definitions" in the section titled "Defining Workflow Templates" at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/studio/ch5.htm

On the other hand, although you can have multiple active template definitions, only one template definition can actually be instantiated at run time. The active template definition is determined by looking at active template definitions in the following range:

effective_date_time <= current_query_date_time <= expiry_date_time

The template definitions are retrieved in descending order of effective date/time. The template definition with the latest effective date and time (the one with the closest effective date/time to the date/time of query) is instantiated. The query is not based on the latest update time. Normally, the last template definition that you create is instantiated, unless you modify the effective time to be earlier than that of existing template definitions.

This issue was reported as CR085261.

Clarification to Steps for Deploying a Plug-In

The following clarifies the steps needed for deploying a new BPM plug-in. Add these instructions to "Deploying the Plug-In" in Programming BPM Plug-Ins for WebLogic Integration at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/devplug/deploy.htm

Although deploying a plug-in is accomplished by editing the config.xml file, you also need to add an entry in application.xml file.

To deploy a new plug-in, take the following steps:

  1. Copy the <new-plugin-ejb.jar> file to the following directory:
    BEA_HOME\weblogic700\integration\lib

    In the preceding line, BEA_HOME represents the WebLogic Platform home.

  2. Edit the config.xml file under the domain directory and enter the following beneath the Application Deployed="true" Name="WLI" tag.
    <EJBComponent Name="New Plug-in" Targets="myserver"
    URI="New-plugin-ejb.jar"/>

  3. Edit the application.xml file in BEA_HOME\weblogic700\integration\lib\META-INF and enter the following under the Plug-ins tag, as follows:
    <!--Plugins-->
      <module>
    <ejb>New-plugin-ejb.jar</ejb>
    </module>

  4. Restart the server. You should be able to see the new plug-in in the Studio.

This issue was reported as CR095879.

Change to Using the weblogic.Admin Command-Line Utility

In Deploying BEA WebLogic Integration Solutions in "Using the weblogic.Admin Command-Line Utility" located at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/deploy/highav.htm

the command line has changed, as indicated by the bold text.

java weblogic.Admin [-url t3://hostname:port]
[-username username]
[-password password]
. . .

Additionally, add the following note:

Note: To use HTTP protocol, you need to turn on HTTP Tunneling in the Administration Server. For more information, see "Setting Up WebLogic Server for HTTP Tunneling," in the WebLogic Server Administration Guide at http://download.oracle.com/docs/cd/E13222_01/wls/docs70/adminguide/web_server.html.

This issue was reported as CR093487.

Correction to Configuring WebLogic Integration with a Web Server and a WebLogic Proxy Plug-In

In Implementing Security with B2B Integration in "Configuring WebLogic Integration with a Web Server and a WebLogic Proxy Plug-In" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/b2bsecur/config.htm), the first paragraph of the note is changed to the following:

The URI endpoints of WebLogic Integration behind the firewall must match exactly the URI endpoints of WebLogic Integration outside the firewall. Because the WebLogic Integration outside the firewall specifies HTTPS, the URI endpoints of the server behind the firewall must also specify HTTPS, even though the communication between the proxy server and WebLogic Integration behind the firewall will be HTTP. For more information about URI endpoints, see "Configuring a Secure Transport" at http://download.oracle.com/docs/cd/E13214_01/wli/docs70/b2bsecur/config.htm.

Change to Clusterable Resources Note

In Deploying BEA WebLogic Integration Solutions in "Clusterable Resources" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/deploy/cluster.htm) the following note is changed in Table 2-1 (Third row [B2B Single node], third column [WLI-B2B Startup]):

Note: Deployed to the administration server and the clustered managed servers.

The new note is as follows:

Note: The b2b-startup.jar is a clusterable service from WebLogic Integration 7.0 and it can be targeted to a cluster. Depending on how the cluster is designed, the b2b-startup.jar should either be deployed on the administration server and managed servers or just targeted to the cluster. If the administration server is part of the cluster, target the b2b-startup.jar to the cluster. However, if the administration server is not part of the cluster, target the b2b-startup.jar to the administration server and the managed servers.

Addition to Configuring a Mail Session

In Using the Data Integration Plug-In in "Step. Configure the Mail Session" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/diplugin/wlpisamp.htm), the following note is added:

Note: If you configure the Mail Session with the WebLogic Server console, you must restart the server to fully restart the mail session.

This issue was reported as CR89616.

Addition to Importing an XML Entity into the Repository

In Using the WebLogic Integration Studio in "Importing an XML Entity into the Repository" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/studio/ch4.htm), the bold text is added to step 2:

In the Name field, enter a unique name for the entity you are adding, including the .xsl suffix.

This issue was reported as CR092339.

Update to Binary to XML Translation

In Translating Data with WebLogic Integration in "Binary to XML" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/diuser/runtime.htm), Listing 6-1, line 17 changes from:

String xml = wlxt.getXMLText(doc, 0, 2);

to

String encoding =
wlxt.extractEncodingFromXMLSource(mflDocumentName);
String xmlText = wlxt.stringDOM(doc, 0, 2, encoding);

This issue was reported as CR092574.

Clarification to Updating the System Password

In Starting, Stopping, and Customizing BEA WebLogic Integration in "Updating the System Password (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/config/custom.htm), change step 2 from:

Select Users from the navigation tree to open the Users page

to

Select Users from the Compatibility Security node in the navigation tree to open the Users page.

This issue was reported as CR090973.

Addition to Administering Business Calendars

In Using the WebLogic Integration Studio in "Administering Business Calendars" (http://download.oracle.com/docs/cd/E13214_01/wli/docs70/studio/ch3.htm), add the following note:

Note: When using timed nodes, business calendars are only used when using BUS_HOURS and BUS_DAYS for time calculations. Using other time intervals results in using a default calendar.

This issue was reported as CR120058.

 


Installation

This section discusses WebLogic Integration 7.0 SP6 installation and migration and includes the following topics:

Full Installation

WebLogic Integration 7.0 SP6 uses the standard BEA WebLogic Platform installer. No changes to the full installation procedure were made for WebLogic Integration 7.0 SP6.

Upgrade Installation

An upgrade installer is provided that allows you to update an existing WebLogic Integration installations as follows:

WebLogic Integration7.0 SP6 uses the standard BEA upgrade installer which overlays an existing installation after backing up user-modifiable files. For instructions on performing a service pack upgrade, see Installing WebLogic Platform at the following URL:

http://download.oracle.com/docs/cd/E13196_01/platform/docs70/install/index.html

When migrating an existing database from WebLogic Integration 7.0 or 7.0 SPx to WebLogic Integration 7.0 SP6, you must update the BPM database for the File Plug-In. For more information, see "Updating the BPM Database Table" in Using the File Plug-In at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/fileplug/fileplua.htm

RDBMS Adapter

The RDBMS adapter, previously available as a download from the dev2dev web site is now packaged with WebLogic Integration 7.0 SP6. The adapter ear file is located in <INTEGRATION_HOME>/adapters/rdbms/lib and the adapter database scripts are located in <INTEGRATION_HOME>/adapters/rdbms/scripts.

 


Migration

The following migration paths are available:

Migrating Domains Created Using the Configuration Wizard

When migrating existing domains created using the Configuration Wizard in WebLogic Integration 7.0, please see "Migrating Domains Created Using the Configuration Wizard" in the WebLogic Platform 7.0 Service Pack 6 Release Notes at the following URL:

http://download.oracle.com/docs/cd/E13196_01/platform/docs70/relnotes/relnotes.html

Migrating From WebLogic Integration 7.0 SP2 or Earlier Versions

The following information applies when migrating from WebLogic Integration 7.0, WebLogic Integration 7.0 SP1, or WebLogic Integration 7.0 SP2 to WebLogic Integration 7.0 SP6.

To migrate to the JSP Worklist, see "Migrating to the JSP Worklist" in Using the WebLogic Integration JSP Worklist at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/jspwlist/ch5.htm

The following information applies when migrating from WebLogic Integration 7.0 or WebLogic Integration 7.0 SP1 to WebLogic Integration 7.0 SP6.

To migrate to File Plug-in, see "Configuring File Plug-in for a Migrated Domain" in Using the File Plug-in at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs70/fileplug/fileplua.htm

XT Run-time Classes Removed from wlicommon.jar

In WebLogic Integration 7.0 SP2, the XT run-time classes were removed from the wlicommon.jar. Any client depending on these classes from the wlicommon.jar will need to use these classes from the wlxtrt.jar. This change was necessary to remove certain EJB interfaces from the server classpath.

In some special situations, this might cause a few workflow executions to fail with a NoClassDefFound error. This will happen in situations where the workflows are using regular Java class Business Operations to do XT actions. In these cases, the WebLogic Integration server classpath needs to be modified to include the wlxtrt.jar.

RosettaNet Schema Changes

Starting with WebLogic Integration 7.0 SP2, WebLogic Integration uses the latest RNIF 2.0 specification. If you are using WebLogic Integration 7.0 SP1 or earlier, you should update the following RosettaNet schema for your existing domains:

RN2GlobalBusinessSignalCode.xsd

To update this schema, copy the schema released with this version of WebLogic Integration to those domains. The RN2GlobalBusinessSignalCode schema is located in the following directory:

BEA_HOME\weblogic700\integration\lib\xmlschema\rosettanet

In the preceding line, BEA_HOME represents the WebLogic Platform home.

 


Using WebLogic Integration with Oracle XA

This section tells you how to configure WebLogic Integration for use with an Oracle XA database. For information about supported database types, see Supported Platforms at the following URL:

http://download.oracle.com/docs/cd/E13196_01/platform/suppconfigs/configs70/70_over/overview.html

Changes Required For XA

To setup your domain to use XA, perform the following steps:

Step 1: Edit the Start Server Scripts

You must enable XA for WebLogic Integration. Add the following option to the startWeblogic and startManagedWeblogic scripts in all domains in which you want to use XA:

-Dbea.eci.repository.useXa=true

Step 2: Edit the Setenv Scripts

You must set your environment to use the correct driver version. If you are unsure of the compatibility between the Oracle client, driver, and server, see Oracle client/driver/server version compatibility (For non-XA and XA).

Edit the setenv script according to the type of driver used: Oracle thin driver or WebLogic jDriver. jDriver is supported for Microsoft SQLServer only.

Oracle thin driver (For non-xa and XA)

Depending on the version of Oracle client used, copy classes12.zip from the applicable directory and place it in WL_HOME\server\lib:

WL_HOME\server\ext\jdbc\oracle\817
WL_HOME\server\ext\jdbc\oracle\901
WL_HOME\server\ext\jdbc\oracle\920

WebLogic jDriver (For non-xa and XA)

Edit the setenv script (BEA_HOME\weblogic700\integration\setenv) to reflect the correct driver version (oci817_8, oci901_8, or oci920_8). Once the correct version of the oci directory is specified, the setenv script sets PATH (Windows systems) or LIBRARY_PATH (non-Windows systems) to include the correct oci directory under one of the following directories:

Note: If you do not use the setenv script supplied with WebLogic Integration, manually set the following path specifications to point to the correct oci directory:

Windows

set PATH=%WL_HOME%\server\bin\oci_driver_version;%ORACLE_HOME%\bin;%PATH%

Solaris

$ export LD_LIBRARY_PATH=
$WL_HOME/server/lib/solaris/oci_driver_version:
$ORACLE_HOME/lib:$LD_LIBRARY_PATH

Oracle client/driver/server version compatibility (For non-XA and XA)

This section describes the compatibility considerations between the Oracle client, driver, and server.

Oracle Thin Driver

Weblogic jDriver

You must install the Oracle client on the machine where WebLogic Server and WebLogic Integration run.

Step 3: Enable XA on the Database Server

To ensure that XA is enabled on the database server, log on to sqlplus as system user and grant the select privilege of DBA_PENDING_TRANSACTIONS to public.

Oracle 8.1.7 Database Server

>sqlplus sys/sys_password@TNSNAME
SQL> grant select on DBA_PENDING_TRANSACTIONS to public;

Oracle 9i Database Server

$sqlplus /nolog
SQL> connect sys/sys_password@TNSNAME as sysdba
SQL> grant select on DBA_PENDING_TRANSACTIONS to public;

Step 4: Edit Database Scripts

The wliconfig (switchdb) script does not work with XA databases. Depending on the JDBC non-XA driver used, set DB_URL and DB_DRIVER to specify your non-XA driver. Before making any XA-related changes in the config.xml file, run the wliconfig (switchdb) script with the correct JDBC driver information.

Oracle thin driver

DB_URL=jdbc:oracle:thin:@(description=(address=(host=
<ORACLE_HOST>)(protocol=tcp)(port=<ORACLE_PORT>))
(connect_data=(sid=<ORACLE_SID>)))
DB_DRIVER=oracle.jdbc.driver.OracleDriver

WebLogic jDriver

For WebLogic jDriver, the server properties are set within the DB_URL definition. This style of definition must be used to allow the bulkloader to operate correctly.

DB_URL=jdbc:weblogic:oracle:(description=(address=
(host=<ORACLE_HOST>)(protocol=tcp)(port=<ORACLE_PORT>))
(connect_data=(sid=<ORACLE_SID>)))

DB_DRIVER=weblogic.jdbc.oci.Driver

Step 5: Edit config.xml

After running the wliconfig (switchdb) script with the correct driver information, modify the config.xml file as described in the following steps. Depending on the domains you use, you may need to add fewer JDBC connection pools for XA. For example, the BPM domain requires two JDBC connection pools while the WLI domain requires three pools.

Note: Be sure to make a backup of config.xml before you begin modifying it.

  1. Create a non-XA jmsPool by selecting the existing non-XA wliPool and changing its name to jmsPool.

    For information on why JMS uses a non-XA pool, see http://download.oracle.com/docs/cd/E13222_01/wls/docs70/faq/jms.html

  2. Add a new XA pool (wliPool) for BPM.

    1. Copy the entire JDBCConnectionPool element from jmsPool and paste it into the config.xml file.

    2. Change the DriverName property to oracle.jdbc.xa.client.OracleXADataSource (XA Oracle thin driver) or weblogic.jdbc.oci.xa.XADataSource (XA WebLogic jDriver).

    3. Change the Name property to wliPool.

  3. Add a new XA pool (wliPool2) for B2B.

    1. Copy the entire JDBCConnectionPool element from wliPool and paste it into the config.xml file.

    2. Modify the Name property to wliPool2.

    The following sample shows jDriver driver entries for three JDBC connection pools, one each for JMS, BPM, and B2B.

    <JDBCConnectionPool CapacityIncrement="2" DriverName="oracle.jdbc.driver.OracleDriver" InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36" Name="jmsPool" Properties="user=scott;password=tiger" RefreshMinutes="0" ShrinkPeriodMinutes="15" ShrinkingEnabled="true" Targets="mycluster" URL="jdbc:oracle:thin:@(description=(address=(host=quandary) (protocol=tcp)(port=1521))(connect_data=(sid=quadary9i)))"/>

    Or

    <JDBCConnectionPool CapacityIncrement="2"
    DriverName="weblogic.jdbc.oci.Driver"
    InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36"
    Name="jmsPool"
    Properties="user=scott;password=tiger;server=quandary9i"
    RefreshMinutes="0" ShrinkPeriodMinutes="15"
    ShrinkingEnabled="true"
    Targets="mycluster"
    URL="jdbc:weblogic:oracle"/>

Both styles of URL definition work for a non-XA WebLogic jDriver. If you use the second style, you must manually add the server property in Properties after the wliconfig (switchdb) script is executed.

If you are upgrading from an earlier version, and have your own JDBCConnectionPools defined, you just need to add the following attribute to all JDBCConnectionPool nodes that use an XA Driver:

XAPreparedStatementCacheSize="0"

Note: No URL is needed for WebLogic jDriver XA driver. You must add the server property in Properties.

The following sample shows Oracle thin driver entries for three JDBC connection pools, one each for JMS, BPM, and B2B.

<JDBCConnectionPool CapacityIncrement="2"
DriverName="weblogic.jdbc.oci.Driver"
InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36"
Name="jmsPool" Properties="user=scott;password=tiger"
RefreshMinutes="0" ShrinkPeriodMinutes="15"
ShrinkingEnabled="true"
Targets="mycluster"
URL="jdbc:oracle:thin:@(description=(address=(host=quandary)
(protocol=tcp)(port=1521))(connect_data=(sid=quadary9i)))"/>
<JDBCConnectionPool CapacityIncrement="2"
DriverName="oracle.jdbc.xa.client.OracleXADataSource"
InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36"
Name="wliPool" Properties="user=scott;password=tiger"
RefreshMinutes="0" ShrinkPeriodMinutes="15"
ShrinkingEnabled="true" Targets="mycluster"
URL="jdbc:oracle:thin:@(description=(address=(host=quandary)
(protocol=tcp)(port=1521))(connect_data=(sid=quadary9i)))"
XAPreparedStatementCacheSize="0"/>
<JDBCConnectionPool CapacityIncrement="2"
DriverName="oracle.jdbc.xa.client.OracleXADataSource"
InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36"
Name="wliPool2" Properties="user=scott;password=tiger"
RefreshMinutes="0" ShrinkPeriodMinutes="15"
ShrinkingEnabled="true"
Targets="mycluster"
URL="jdbc:oracle:thin:@(description=(address=(host=quandary)
(protocol=tcp)(port=1521))(connect_data=(sid=quadary9i)))
XAPreparedStatementCacheSize="0""/>

  1. Change JDBCTxDataSource for WLCHub.DS to use wliPool2.
    <JDBCTxDataSource EnableTwoPhaseCommit="true" 
    JNDIName="WLCHub.DS" Name="WLCHub.DS"
    PoolName="wliPool2" Targets="myserver"/>

    Leave the JDBCTxDataSource property as specified, with the JNDI name as com.bea.wlpi.TXDataSource and the pool name as wliPool.

    <JDBCTxDataSource EnableTwoPhaseCommit="true"
    JNDIName="com.bea.wlpi.TXDataSource"
    Name="TXDataSource" PoolName="wliPool" Targets="myserver"/>

  2. Change all JMSJDBCStore properties to use jmsPool as the connection pool instead of wliPool.
    <JMSJDBCStore Name="JMSWLIStore" ConnectionPool="jmsPool" 
    PrefixName="SPOKE___user1"/>

  3. For the JDBCDataSource, leave WLAI_DataSource as the JNDI name, but change the pool name to jmsPool.
    <JDBCDataSource JNDIName="WLAI_DataSource"
    Name="WLAI_DataSource"
    PoolName="jmsPool" Targets="myserver"/>

  4. Add the following line to the wlai.properties file located in <domain>/wlai.
    wlai.repositoryDatasourceName=com.bea.wlpi.TXDataSource

Step 6: Edit fileRealm.properties

Add ACL properties to the new JDBC connection pools in the fileRealm.properties file located in your domain directory. You need to add the following ACL properties for each new pool:

acl.reset.weblogic.jdbc.connectionPool
acl.reserve.weblogic.jdbc.connectionPool
acl.shrink.weblogic.jdbc.connectionPool

For example, to add properties for jmsPool and wliPool2 (note that wliPool already exists), add the following ACLs:

acl.reset.weblogic.jdbc.connectionPool.wliPool2=wlcSamplesUser,
wlisystem,admin
acl.reset.weblogic.jdbc.connectionPool.jmsPool=wlcSamplesUser,
wlisystem,admin
acl.reserve.weblogic.jdbc.connectionPool.wliPool2=wlisystem,
everyone
acl.reserve.weblogic.jdbc.connectionPool.jmsPool=wlisystem,
everyone
acl.shrink.weblogic.jdbc.connectionPool.wliPool2=
wlcSamplesUser,wlisystem,admin
acl.shrink.weblogic.jdbc.connectionPool.jmsPool=wlcSamplesUser,
wlisystem,admin

Considerations and Limitations

Do not run the wliconfig (switchdb) script after editing config.xml to use an XA database. Running the switchdb script overwrites some properties with default non-XA values. You should check config.xml to see if the XA information is correct before starting the server.

To run samples with XA using the existing RunSamples script:

  1. Run the existing RunSamples script (non-XA values).

  2. Make the changes described in Step 2: Edit the Setenv Scripts through Step 6: Edit fileRealm.properties.

  3. Edit SAMPLES_HOME/integration/samples/lib/RunSamples.xml as follows so that it does not invoke the switchdb script when the RunSamples script is executed.
    <target name="SwitchDB"
    description="Switch database">
    <echo message="SKIPPING SWITCHDB!!!!!!"/>
    </target>

  4. Run the RunSamples script.

XA Recovery Setup

To ensure that XA recovery works properly, perform the following steps:

  1. While logged in as sysdba, grant permission to the following dba tables:
    SQL> grant all on dba_2pc_pending to public;
    SQL> grant all on dba_pending_transactions to public;
    SQL> grant all on dba_2pc_neighbors to public;

  2. Make sure that the dba_2pc_pend table is empty. If transactions exist, remove them according to the Oracle System Administration Guide.

  3. The Execute Thread count on each server to be smaller than the max JDBC connection pool setting for the XA driver.

  4. For jDriver XA on Solaris, to avoid a JVM crash, use the following properties for the XA connection pool and add TestConnectionsOnReserve="true" TestTableName="dual" for all JDBC connection pools. For example:
    <JDBCConnectionPool CapacityIncrement="2"
    DriverName="weblogic.jdbc.oci.Driver"
    InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36"
    Name="jmsPool"
    Properties="user=scott;password=tiger"
    RefreshMinutes="0" ShrinkPeriodMinutes="15"
    ShrinkingEnabled="true"
    Targets="WLI_CLUSTER"
    TestConnectionsOnReserve="true" TestTableName="dual"
    URL="jdbc:weblogic:oracle:(description=(address=(host=quadary)
    (protocol=tcp)(port=1521))(connect_data=sid=quadary9i)))"/>
    <JDBCConnectionPool CapacityIncrement="2"
    DriverName="weblogic.jdbc.oci.xa.XADataSource"
    InitialCapacity="8" LoginDelaySeconds="1" MaxCapacity="36"
    Name="wliPool"
    Properties="oracleXATrace=false;user=scott;
    openString=Oracle_XA+Acc=P
    /scott/tiger+SesTm=43200+DB=quandary9i+Threads=true
    +Sqlnet=quandary9i+LogDir=.
    +DbgFl=0x0;password=stiger;dataSourceName=TXDataSource;
    ocixaDebugLevel=;server=quandary9i"
    RefreshMinutes="0" ShrinkPeriodMinutes="15"
    ShrinkingEnabled="true" Targets="WLI_CLUSTER"
    TestConnectionsOnReserve="true" TestTableName="dual"/>

  5. If you encounter problems when using the Oracle Thin/XA Driver9.2.0 with the Oracle 9.2.0 database and transactions, see CR094209 in the "jDriver Known Issues" in the Release Notes for BEA WebLogic Server 7.0 at the following URL:
    http://download.oracle.com/docs/cd/E13222_01/wls/docs70/notes/issues.html

  6. In the JTA setting in the config.xml file, the TimeoutSeconds attribute should be set to a reasonably small value depending on the applications.

  7. In the XA JDBCConnectionPool, add three parameters:

 

Back to Top Previous Next