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

Migration Guide

 Previous Next Contents View as PDF  

Migrating WebLogic Integration 2.1 to WebLogic Integration 7.0

This section provides the procedure for migrating from BEA WebLogic Integration 2.1 or BEA WebLogic Integration 2.1 Service Pack 1 (SP1) to BEA WebLogic Integration 7.0.

It includes the following steps:

 


Step 1. Retrieve Your WebLogic Integration 2.1 Database Connection Information

Later in this procedure (Step 5. Create a New Domain and Configure Database Information) you need to use information about the database configuration of your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 installation. Retrieve that information now and note it for later.

To retrieve this information, complete the following procedure:

  1. Start the WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 Database Wizard by completing the procedure appropriate for your platform:

    Windows:

    1. Select the domain that contains WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 database information.

    2. Start the Database Wizard for the appropriate domain.


       

      The Choose Configuration Option dialog box is displayed.

    UNIX:

    1. Execute the following commands:
      cd WLI_HOME/bin
      wliconfig

      The Choose BEA Home Directory dialog box is displayed.

    2. Select an existing BEA Home directory, and then click Next.

      The Choose Domain to Configure dialog box is displayed.

    3. Select a domain, and then click Next.

      The Choose Configuration Option dialog box is displayed.

  2. Select Switch Database and click Next.

    The Select Database dialog box is displayed.

  3. Select a database type (Oracle, Microsoft SQL Server, or Sybase) and select Next.

    The Configure database_type Database dialog box is displayed. The name of the database type you selected replaces database_type in the window title. In this example Microsoft SQL is selected, so the Configure Microsoft SQL Database dialog box is displayed.


     

  4. Record the database configuration information listed in the fields. This information will be required in Step 5. Create a New Domain and Configure Database Information.

  5. Click Exit.

 


Step 2. Stop Your WebLogic Integration 2.1 Application

Before you migrate to WebLogic Integration 7.0, stop your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application. Make sure that:

 


Step 3. Back Up Your Application

Before you attempt to migrate to WebLogic Integration 7.0, we strongly recommend that you back up the following:

We also recommend that you export all your WebLogic Integration repository information and workflows:

 


Step 4. Install WebLogic Integration 7.0

Install WebLogic Integration 7.0 in one of two modes:

For instructions, see Installing BEA WebLogic Platform in the BEA WebLogic Platform document set, available at the following URL:

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

Warning: Do not create a new WebLogic Integration repository or database after the installation is complete. Do not run the RunSamples script.

 


Step 5. Create a New Domain and Configure Database Information

The directory structure for WebLogic Server domains was changed between Releases 6.x and 7.0. This change affects many scripts and settings of environment variables. For example, changes in the directory structure affect the settings of the classpath and path environment variables and the script that starts WebLogic Integration (startWebLogic). For this reason, this procedure provides steps for creating a new WebLogic Integration 7.0 domain and then moving your WebLogic Integration application-specific components to it, as described in Step 7. Migrate Components of Your WebLogic Integration Application.

The following procedure allows you to create a new domain for a single-server (standalone) configuration. For instructions on creating a multiple-server configuration, see "Step 2. Create a WebLogic Integration Domain" in Configuring a Clustered Deployment in Deploying BEA WebLogic Integration Solutions.

To create and customize a new domain for a single server:

  1. Run the Configuration Wizard by completing the procedure appropriate for your platform:

  1. Pick a domain template that contains the components of WebLogic Integration required for your application.


     

    For more information about these templates, see "WebLogic Integration Configuration Templates" in Getting Started in Starting, Stopping, and Customizing BEA WebLogic Integration and Configuration Wizard Template Reference in the BEA WebLogic Platform document set, available at the following URL:

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

    Warning: Make sure you select a WebLogic Integration template for creating the new domain; do not use a WebLogic Server or a WebLogic Portal template. Specifying a WebLogic Integration template ensures that the domain created in this step is based on the WebLogic Server 6.x security realm in compatibility mode. The new WebLogic Server 7.0 realm, based on LDAP, is not supported with this release of WebLogic Integration. If you create a new domain by selecting a WebLogic Server template, the new domain uses the new WebLogic Server 7.0 security realm, which is based on LDAP.

    Note: It is recommended that you choose the same domain type used with your WebLogic Integration 2.1 application. For example, if you used the preconfigured EAI Domain for your WebLogic Integration 2.1 application, choose the EAI Domain template in this step.

  2. In the Choose Server Type dialog box, select Single Server (Standalone Server).

  3. Continue to provide the information required to create the new domain when prompted. When the process is complete, select End Configuration Wizard in the Configuration Wizard Complete dialog box, and then click the Done button to dismiss the Configuration Wizard.

  4. (Optional) Save a copy of the generated config.xml file which contains configuration information, embedded in comments. The comments are deleted when the instance of WebLogic server is started. Make a copy of the existing config.xml file by entering the commands appropriate for your operating system:

  5. Configure the database connection information for the new domain. Start the WebLogic Integration Database Wizard (wliconfig) in the new domain created in steps 1 to 4.

    For example, if you created a domain named mydomain in the default location, enter the commands appropriate for your operating system:

    The Choose Configuration Option window is displayed.

  6. Select the Switch Database option, as shown in the following figure, and click Next.

    Figure 2-1 Choose Configuration Option


     

    The Select Database window is displayed.

  7. Select the same database type that you used for your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application.

    The Configure Database window is displayed.

  8. Enter the database connection information that you noted in Step 1. Retrieve Your WebLogic Integration 2.1 Database Connection Information. Click Next.

    When the Database Wizard completes the configuration, the Changes Successful window is displayed.

  9. Click Finish.

For information about running the Database Wizard, see "Using the Database Wizard" in Customizing WebLogic Integration in Starting, Stopping, and Customizing BEA WebLogic Integration.

Warning: Do not start the instance of WebLogic Server for this domain and do not create the database.

WebLogic Integration System Identities

In WebLogic Integration 2.1 and WebLogic Integration 2.1 SP1, two system user identities are used: wlpisystem and wlcsystem. In WebLogic Integration 7.0, these two system user identities are replaced by a single system user identity: wlisystem. When you create a new domain in WebLogic Integration (as described in "Customizing WebLogic Integration" in Creating a New Domain in Starting, Stopping, and Customizing BEA WebLogic Integration), wlisystem is the only the system user identity that is created.

 


Step 6. Migrate Your Database

This section provides a procedure for converting the database schema for either WebLogic Integration 2.1 or WebLogic Integration 2.1 Service Pack 1 (SP1) to the WebLogic Integration 7.0 format. This upgrade procedure is represented by the gray arrows labeled Migrate database in Figure  2-2.

Figure 2-2 WebLogic Integration 7.0 Database Migration


 

Caution: This migration procedure updates a single repository. The migration of repository data from an existing database instance to a new instance is not supported.

To update the existing repository data to the WebLogic Integration 7.0 format, complete the following procedure:

  1. Go to the WebLogic Integration home directory and set the top-level WebLogic Integration environment variables by running the setenv script. The commands you must run to perform these tasks depend on which platform you are using:

  2. In a text editor, open the WLI_HOME\dbscripts\migrate\SystemRepData.xml file and add the line shown in bold in the following listing.

Listing 2-1 SystemRepData.xml

<?xml version="1.0"?>
<!DOCTYPE wlc SYSTEM "WLC.dtd">
<wlc
system-password="wlisystem"
ignore-wlc="true"
>

  1. Go to the bin directory in your WebLogic Integration home directory. For example:

  2. Run the setdomain script on the domain you created in Step 5. Create a New Domain and Configure Database Information. For example:

  3. Run the switchdb script for the database you configured in Step 5. Create a New Domain and Configure Database Information. For example:
    switchdb oracle

    For a description of this command, including details about valid options for it, see WebLogic Integration Commands in Starting, Stopping, and Customizing BEA WebLogic Integration.

  4. Run the migration script to update the repository data from WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 to the WebLogic Integration 7.0 domain:
    migratedb

 


Step 7. Migrate Components of Your WebLogic Integration Application

In Step 5. Create a New Domain and Configure Database Information, you created a new WebLogic Integration domain. In this step, you migrate your WebLogic Server application-specific components from your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application to the new domain.

Note: As used here, the term WebLogic Integration application refers to an application that you have developed, based on WebLogic Integration. It should not be confused with the WebLogic Application application element in the config.xml file.

Examples of WebLogic Server application-specific components include the following:

Warning: Migrate only those application-specific components that you developed for your application; do not migrate the components used by WebLogic Integration itself. For example, you should not migrate the JMS queues used by WebLogic Integration, but you do need to migrate the custom JMS queues that you developed for your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application. The JMS queues used by WebLogic Integration are automatically included in the config.xml file that is generated when you create the new domain in Step 5. Create a New Domain and Configure Database Information.

Warning: Do not copy files (for example, config.xml) from your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 domain directory to your WebLogic Integration 7.0 domain directory. Due to changes in the directory structure of WebLogic Server 7.0 domains, WebLogic Server 6.x files are not compatible with WebLogic Server 7.0.

For instructions on migrating these WebLogic Server components and more information about migrating from WebLogic Server 6.x to WebLogic Server 7.0, see "Upgrading WebLogic Server 6.x to Version 7.0" in BEA WebLogic Server Upgrade Guide. This document is available, in the BEA WebLogic Server documentation set, at the following URL:

http://download.oracle.com/docs/cd/E13222_01/wls/docs70/upgrade/index.html

Note: As used in this document, the terms upgrade and migrate are synonymous. The term migrate refers to the process of changing your software from an older release to a newer one. Do not confuse this upgrade process with that of moving clusterable services from one WebLogic Server to another.

Because WebLogic Integration 7.0 is built on top of WebLogic Server 7.0, the changes to your application that are required for migrating from WebLogic Server 6.x to WebLogic Server 7.0 also affect any migration to WebLogic Integration 7.0.

Warning: WebLogic Server 7.0 supports a new security realm based on LDAP. WebLogic Integration 7.0, however, does not support the new security realm based on the LDAP. WebLogic Integration 7.0 supports the Compatibility realm which, in turn, supports both the File and RDBMS realms.

Application Integration

If your application invokes the application integration functionality provided by WebLogic Integration, you must configure your application integration adapter EAR file(s). For instructions, see Configuring Application Integration Adapter EAR Files.

Application-Specific JAR Files

If you create application-specific JAR files for your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application, you must copy those JAR files into the WLI_HOME/lib directory (where WLI_HOME represents the location of the WebLogic Integration 7.0 home directory).

Warning: Do not copy application integration JAR files from your WebLogic Integration 2.1 or 2.1 SP1 application to your WebLogic Integration 7.0 application. For more information, see Application Integration CLASSPATH and Adapter Packaging Changes.

Also, you must add an entry for your application-specific JAR to the config.xml and application.xml files for the WebLogic Integration 7.0 domain created in Step 5. Create a New Domain and Configure Database Information.

The WebLogic Integration J2EE components are now deployed using the exploded form. To deploy J2EE components in the exploded form, you must use a new syntax when you specify a JAR file in the config.xml file. Do not cut and paste the application-specific JAR entries directly from your WebLogic Integration 2.1 or WebLogic Integration 2.1 config.xml file to your WebLogic Integration 7.0 config.xml file. Instead, follow the instructions in "Adding an EJB to the WLI Application Element" in Customizing WebLogic Integration in Starting, Stopping, and Customizing BEA WebLogic Integration.

startWebLogic Script

If custom changes have been made to the startWebLogic script that you run with your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application, you must make the same changes to the startWebLogic script for the WebLogic Integration 7.0 domain created in Step 5. Create a New Domain and Configure Database Information. For example, if you add an application-specific JAR file, containing business operations, to the CLASSPATH of the startWebLogic script, you must also add the same JAR file to the CLASSPATH of the WebLogic Integration 7.0 startWebLogic script (startWebLogic.cmd for Windows systems and startWebLogic.sh for UNIX systems).

For more information, see "Adding Java Classes to the CLASSPATH" in Customizing WebLogic Integration in Starting, Stopping, and Customizing BEA WebLogic Integration.

setenv Script

If the setenv script for your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application is customized, you must customize, in the same way, the setenv script for the WebLogic Integration 7.0 domain created in Step 5. Create a New Domain and Configure Database Information. For example, if you add an application-specific JAR file containing business operations to the CLASSPATH of the setenv script, you must add the same JAR file to the CLASSPATH of the WebLogic Integration 7.0 setenv script. The name of this script is setenv.cmd on Windows systems and setenv.sh on UNIX systems.

For more information, see "Adding Java Classes to the CLASSPATH" in Customizing WebLogic Integration in Starting, Stopping, and Customizing BEA WebLogic Integration.

Application Integration CLASSPATH and Adapter Packaging Changes

In WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 applications, you must include adapter Java classes in the system CLASSPATH for your instance of WebLogic Server. In WebLogic Integration 7.0 applications, however, adapter Java classes must be packaged in a single, self-contained application enterprise archive (EAR) file. Do not move any adapter Java classes or JAR files to your WebLogic Integration 7.0 installation, and do not add the adapter classes to the WebLogic Integration CLASSPATH. For instructions on configuring adapter EAR files, see Configuring Application Integration Adapter EAR Files.

B2B Transport Servlet

If your WebLogic Integration 7.0 application uses the business-to-business integration (B2B) functionality provided by WebLogic Integration, you must add an entry for the TransportServletFilter to the deployment descriptor for the default Web application. If, when you created a domain (see Step 5. Create a New Domain and Configure Database Information), you used a template that included B2B functionality, then your domain already has an entry for the TransportServletFilter.

For example, if you created a domain with the WLI domain template, an entry for TransportServletFilter is added to the DOMAIN_HOME\applications\DefaultWebApp_myserver\WEB-INF\web.xml file, where DOMAIN_HOME represents the pathname of the domain you created, as shown in the following listing.

Listing 2-2 Entry for TransportServerFilter in web.xml

<!-- WLI-B2Bi filter-begin.  DO NOT EDIT -->
<filter>
<filter-name>TransportServletFilter</filter-name>
<filter-class>com.bea.b2b.transport.http.TransportServletFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>TransportServletFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- WLI-B2Bi filter-end. -->

 


Step 8. Migrate Your Security Realm Data

If you add any data, such as entries for your own users or groups, to your WebLogic Integration 2.1 or 2.1 SP1 security realm, you must also add the same data to the new domain created in Step 5. Create a New Domain and Configure Database Information.

Warning: Do not copy the fileRealm.properties and SerializedSystemIni.dat file from your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 domain directory to your new WebLogic Integration 7.0 domain because the default system user identities and groups have changed. For more information, see WebLogic Integration System Identities.

Migrating from the RDBMS Realm

If you migrate from a WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application in which the RDBMSRealm is used, you must change the realm specified, for the domain, in the config.xml file (created in Step 5. Create a New Domain and Configure Database Information) from FileRealm to RDBMSRealm. Specifically, you must replace the Realm element in the config.xml file (shown in Listing  2-3) with the RDBMSRealm, CachingRealm, and Realm elements from your existing WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 config.xml file.

If you have not booted your instance of WebLogic Server, the generated config.xml file will contain the RDBMSRealm elements in a comment section of the file. You can remove the comment delimiters for this section, if you want to add the RDBMSRealm elements to your config.xml file. The default database, PointBase is already configured. You must update the database configuration information from your existing WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1config.xml file.

Listing 2-3 Realm Element to Be Replaced

<Realm CachingRealm="" FileRealm="myFileRealm" Name="myRealm"/>

Database attributes for your application should be configured already in your existing WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1config.xml file. Listing  2-4 shows an example listing for an Oracle database.

Listing 2-4 RDBMS Elements to Be Added

<RDBMSRealm DatabaseDriver="oracle.jdbc.driver.OracleDriver" DatabaseURL="jdbc:oracle:thin:@(description=(address=(host=
MY_ORACLE_SERVER)(protocol=tcp)(port=1521))(connect_data=
(sid=MY_ORACLE_SID)))" DatabaseUserName="scott"
DatabasePassword="tiger" Name="wlpiRDBMSRealm"
RealmClassName="com.bea.wlpi.rdbmsrealm.RDBMSRealm"
SchemaProperties="getGroupNewStatement=true;
removeUserFromGroup=DELETE FROM USERMEMBER WHERE USERID
= ? AND GROUPID = ?;getAcls=SELECT NAME, PRINCIPAL,
PERMISSION FROM ACLENTRIES ORDER BY NAME, PRINCIPAL;addUserToGroup=INSERT INTO USERMEMBER
(USERID, GROUPID) VALUES ( ?, ? );getGroupMembersUsers
=SELECT USERMEMBER.USERID, PASSWORD FROM USERMEMBER,
WLSUSER WHERE GROUPID = ? AND USERMEMBER.USERID = WLSUSER.USERID;newGroup=INSERT INTO WLSGROUP (GROUPID)
VALUES ( ? );addGroupToGroup=INSERT INTO GROUPMEMBER (GROUPMEMBERID, GROUPID) VALUES ( ?, ? );newUser=INSERT
INTO WLSUSER (USERID, PASSWORD) VALUES ( ? , ? );removeGroupFromGroup=DELETE FROM GROUPMEMBER WHERE
GROUPMEMBERID = ? AND GROUPID = ?;deleteGroup4=DELETE FROM
WLSGROUP WHERE GROUPID = ?;deleteUser3=DELETE FROM WLSUSER
WHERE USERID = ?;deleteGroup3=DELETE FROM USERMEMBER WHERE
GROUPID = ?;getPermissions=SELECT DISTINCT PERMISSION
FROM ACLENTRIES;deleteUser2=DELETE FROM USERMEMBER WHERE
USERID = ?;getPermission=SELECT DISTINCT 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"/>

<CachingRealm BasicRealm="wlpiRDBMSRealm"
CacheCaseSensitive="true" Name="wlpiCachingRealm"/>

<Realm CachingRealm="wlpiCachingRealm" FileRealm=
"myFileRealm" Name="myRealm"/>

Note: The RDBMSRealm element in Listing  2-4 must be one continuous line in your config.xml file. In Listing  2-4 the element is divided into many lines for readability.

Migration from the RDBMSRealm is supported only for the Microsoft SQL Server and Oracle databases.

Note: A new security model for trusted relationships is used in WebLogic Server 7.0. For more information, see Trusted Relationships.

 


Step 9. Migrate to the Keystore for Security

In WebLogic Integration 2.1 and WebLogic Integration 2.1 SP1 applications, private keys and the certificates associated with them are stored on the file system. WebLogic Platform 7.0 provides a keystore in which those keys and certificates can be stored. If your WebLogic Integration application is configured to communicate using the SSL protocol, or if it contains trading partners with delivery channel(s) that are configured to use the SSL protocol, message encyption, or digital signatures, we recommend that you convert your application to use the new keystore.

Use of the SSL protocol for communication between trading partners is supported for all WebLogic Integration B2B collaboration protocols (ebXML, XOCP, and RosettaNet). Message encryption and digital signatures, however, are supported only for RosettaNet 2.0.

Note: For WebLogic Integration 7.0, the only supported keystore provider is Java Keystore (JKS) from Sun Microsystems.

For more information about using a keystore with WebLogic Integration, see Configuring the Keystore in Implementing Security with B2B Integration.

Convert your WebLogic Integration application to use the new keystore by importing all existing certificates and private keys from the file system into the keystore. To perform this conversion, complete the following steps:

  1. Go to the WebLogic Integration home directory and set the top-level WebLogic Integration environment variables by running the setenv script. The commands you must run to perform these tasks depend on which platform you are using:

  2. Go to the new WebLogic Integration 7.0 domain created in Step 5. Create a New Domain and Configure Database Information by completing the following command:
    cd DOMAIN_HOME

    DOMAIN_HOME represents the pathname of the new domain.

  3. In a text editor, open the appropriate start script (startWebLogic.cmd script on Windows or startWebLogic script on UNIX) and make the changes described in the following steps:

    1. Find the line containing the java command that starts the instance of WebLogic Server, as shown in the following listing:
      %JAVA_HOME%\bin\java ... weblogic.Server

    2. Add the Java system property wli.keystore.automigrate to the java command line, and set the property equal to true, as shown (in bold) in the following listing:
      %JAVA_HOME%\bin\java ... -Dwli.keystore.automigrate=true
      weblogic.Server

    3. Add the Java system property wli.keystore.password to the java command line appropriate for your platform.

      On a Windows platform, enter the string shown in bold in the following listing:

      %JAVA_HOME%\bin\java ... -Dwli.keystore.automigrate=true
      -Dwli.keystore.password=%KEYSTORE_PASS% weblogic.Server

      On a UNIX platform, enter the string shown in bold in the following listing:

      $JAVA_HOME/bin/java ... -Dwli.keystore.automigrate=true
      -Dwli.keystore.password=$KEYSTORE_PASS weblogic.Server

      In both listings, KEYSTORE_PASS represents the environment variable that contains the password of the keystore. We strongly recommend that you specify a password using an environment variable, as shown in the listings in this step, rather than including the passwords in the scripts. Passwords should not be stored in clear text in files.

      The password specified in the KEYSTORE_PASS environment variable must match the password for the keystore that you specify in step 8.

    4. Add the Java system property wli.cakeystore.password to the java command line appropriate for your platform.

      On a Windows platform, enter the string shown in bold in the following listing:

      %JAVA_HOME%\bin\java ... -Dwli.keystore.automigrate=true
      -Dwli.keystore.password=%KEYSTORE_PASS%
      -Dwli.cakeystore.password=%CAKEYSTORE_PASS% weblogic.Server

      On a UNIX platform, enter the string shown in bold in the following listing:

      $JAVA_HOME/bin/java ... -Dwli.keystore.automigrate=true
      -Dwli.keystore.password=$KEYSTORE_PASS
      -Dwli.cakeystore.password=$CAKEYSTORE_PASS weblogic.Server

      In both listings, CAKEYSTORE_PASS represents the environment variable that contains the password of the root Certificate Authority (CA) keystore.

      The password specified in the CAKEYSTORE_PASS environment variable must match the password for the root Certificate Authority (CA) that you specify in step 8.

    5. For each security certificate used by your WebLogic Integration application, add the following system property to the java command line for your platform.

      Windows:

      -D Key.certificateName.password=%KEY_PASS1%

      UNIX:

      -D Key.certificateName.password=$KEY_PASS1

      In both property settings, certificateName represents the Certificate Name and KEY_PASS1 represents the environment variable that contains the password for the private key of the certificate. The settings for these properties should match the settings for these certificates in your WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 application.

      Add this system property for all the security certificates used by your application. For example, if you specify two certificates, cert1 and cert2, with the environment variables passcert1 and passcert2, respectively (to define the private key passwords), the java command line in the startWebLogic.cmd script (for Windows) appears as shown in the following listing:

      %JAVA_HOME%\bin\java ... -Dwli.keystore.automigrate=true
      -Dwli.keystore.password=$KEYSTORE_PASS
      -DKey.cert1.password=%passcert1%
      -DKey.cert2.password=%passcert2%
      weblogic.Server

  4. Set the environment variables for the private key passwords, the password for the keystore, and the password of the root Certificate Authority (CA) keystore that you defined in step 3.

    The values of the KEYSTORE_PASS and CAKEYSTORE_PASS environment variables must match the passwords for the keystore and the root Certificate Authority (CA) keystore that you specify in step 8.

  5. In a text editor, open the config.xml file for the new domain (created in Step 5. Create a New Domain and Configure Database Information) and set false as the value of the Deployed attribute of the WebLogic Integration Application element, as shown in the following example.
    <Application Deployed="false" Name="WebLogic Integration"
    Path="c:/bea/weblogic700/integration/lib>" TwoPhase="true">

    When you set this attribute to false, the WebLogic Integration application (the collection of J2EE components that make up WebLogic Integration) is not deployed the next time the instance of the WebLogic Server for the new domain is booted.

  6. Start your instance of WebLogic Server, using the new WebLogic Integration 7.0 domain you created in Step 5. Create a New Domain and Configure Database Information, by completing the procedure appropriate for your platform.

  1. Log on to the WebLogic Server Administration Console:

    1. Open a new browser window.

    2. Enter the URL for your system's WebLogic Server Administration Console. The actual URL you enter depends on your system. It should conform to the following format:
      http://host:port/console

      The WebLogic Server Administration Logon page is displayed.

    3. Enter your WebLogic Server username and password, then click Sign In. The username and password entered here are the username and password that you specified when you created the domain in Step 5. Create a New Domain and Configure Database Information.

      The Welcome to BEA WebLogic Server Home page is displayed.

    Note: For more detailed instructions, see "Starting the WebLogic Server Administration Console" in WebLogic Integration Administration and Design Tools in Starting, Stopping, and Customizing BEA WebLogic Integration.

  2. Create the keystores. For instructions, see "Creating the Keystores" in Configuring the Keystore in Implementing Security with B2B Integration.

  3. Configure the WebLogic keystore provider for Java Keystore (JKS) from Sun Microsystems. For instructions, see "Configuring the WebLogic Keystore Provider" in Configuring the Keystore in Implementing Security with B2B Integration.

  4. Shut down the WebLogic Server instance for the new WebLogic Integration 7.0 domain (created in Step 5. Create a New Domain and Configure Database Information), by completing the procedure appropriate for your platform:

    In both cd command lines, DOMAIN_HOME represents the pathname of the new domain you (which you created in Step 5. Create a New Domain and Configure Database Information), and domain represents the directory you created in Step 5. Create a New Domain and Configure Database Information.

  5. In a text editor, open the config.xml file for the new domain (created in Step 5. Create a New Domain and Configure Database Information) and set true as the value of the Deployed attribute of the WebLogic Integration Application element, as shown in the following example:
    <Application Deployed="true" Name="WebLogic Integration"
    Path="c:/bea/weblogic700/integration/lib>" TwoPhase="true">

    When you set this attribute to true, WebLogic Integration application (the collection of J2EE components that make up WebLogic Integration) is deployed the next time the instance of the WebLogic Server for the new domain is booted.

  6. Start the instance of WebLogic Server using the new WebLogic Integration 7.0 domain (created in Step 5. Create a New Domain and Configure Database Information) by completing the procedure appropriate for your platform:

  1. Shut down the WebLogic Server instance for the new WebLogic Integration 7.0 domain (created in Step 5. Create a New Domain and Configure Database Information) by completing the procedure appropriate for your platform:

    In both cd command lines, DOMAIN_HOME represents the pathname of the new domain that you created in Step 5. Create a New Domain and Configure Database Information.

  2. Remove the wli.keystore.automigrate system property from your startWebLogic script. This step is mandatory; it ensures that the next time the startWebLogic script is run, the B2B engine does not attempt to migrate the certificates and the private keys associated with them from the file system to the keystore, again. (This migration should be attempted only once.)

    To remove this property, complete the following procedure:

    1. In a text editor, open the start script for your system: startWebLogic.cmd for Windows or startWebLogic for UNIX.

    2. Remove the only the wli.keystore.automigrate system property from your script.

    Warning: Do not remove the Key.certificateName.password, the wli.cakeystore.password, and the wli.keystore.password system properties that you added in step 3.

    If you make these changes to the same script you edited in step 3, your script appears as shown in the following listing.

Listing 2-5 Example startWebLogic.cmd Java Command for Windows

%JAVA_HOME%\bin\java ... -Dwli.keystore.password=%KEYSTORE_PASS%
-Dwli.cakeystore.password=%CAKEYSTORE_PASS% -DKey.cert1.password=%passcert1%
-DKey.cert2.password=%passcert2%
weblogic.Server

Caution: This procedure should be done only once, to initially populate the keystore.

This procedure does not include steps for migrating the server certificate and the private key associated with it. For instructions on adding this server certificate and associated key to the keystore, see "Adding the Server Certificate Required by SSL" in Configuring the Keystore in Implementing Security with B2B Integration.

 


Step 10. Migrate Your RosettaNet Workflows

If your WebLogic Integration application includes workflows that implement the RosettaNet protocol, you must make changes to those workflows before running your application with WebLogic Integration 7.0.

Note: If your WebLogic Integration application uses RosettaNet workflows, see RosettaNet Schema Changes.

To make your RosettaNet workflows compatible with WebLogic Integration 7.0, complete the following procedure:

  1. Go to the WebLogic Integration home directory and set the top-level WebLogic Integration environment variables. To set these variables, run the setenv script appropriate for your platform:

  2. Start an instance of WebLogic Server using the new WebLogic Integration 7.0 domain (which you created in Step 5. Create a New Domain and Configure Database Information) by completing the procedure appropriate for your platform.

    On a Windows system, you have a choice of two methods:

    On a UNIX system:

    cd DOMAIN_HOME
    startWebLogic

    In both cases, DOMAIN_HOME represents the pathname of the new domain that you created in Step 5. Create a New Domain and Configure Database Information.

  3. Start the WebLogic Integration Studio as described in "Starting the Studio" in WebLogic Integration Administration and Design Tools in Starting, Stopping, and Customizing BEA WebLogic Integration. If an instance of your RosettaNet workflow is currently stored in the WebLogic Integration repository, skip to step 5. (Instances of templates stored in the WebLogic Integration 2.1 repository are still available after completing Step 6. Migrate Your Database.)

  4. Import your WebLogic Integration RosettaNet workflow template into the Studio by completing the following procedure:

    1. From the Studio menu bar, choose Tools—>Import Package... .

    2. In the Import:Select File window, select the JAR file that contains the RosettaNet workflow templates to be converted for your application. Click Next.

    3. Expand the drop-down list under Target Organization and select the appropriate organization for your application.

    4. Click Import, and then Close.

    Note: For more detailed instructions on importing workflows, see Importing and Exporting Workflow Packages in Using the WebLogic Integration Studio.

  5. Open your WebLogic Integration RosettaNet workflow template in the Studio by completing the following procedure:

    1. In the left pane, expand the drop-down list under Organization and select the appropriate organization for your application.

    2. In the left pane, expand the Templates folder. A list of all the templates for the application is displayed.

    3. Expand the template folder targeted for conversion in the left pane.

    4. Within the template folder, right-click the folder targeted for conversion. (You can identify it by the date and time stamp shown on it.) A menu is displayed.

    5. Select Open.

      The start, task, decision, and event nodes that make up the workflow are displayed.

  6. In the workflow, replace each instance of a task node with a Send Business Message action with the following three nodes:

    Detailed instructions for adding these nodes are provided in steps 6-a to 6-v. The following figure shows how your workflow is changed when you substitute these nodes for all instances of a task node with a Send Business Message action.

    Figure 2-3 Differences Between RosettaNet Workflows for WebLogic Integration 2.1 and WebLogic Integration 7.0


     

    In RosettaNet workflows for WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1, the Send Business Message task sends the message, receives the HTTP status code, and then proceeds to the next node. In RosettaNet workflows for WebLogic Integration 7.0, however, the Send Business Message task sends the message, and an event node (RosettaNet Status Event) waits for the HTTP status. When it receives the status, the event node marks another task node (Wait for HTTP Status) as done, and the workflow proceeds from the Wait for HTTP Status task node.

    In RosettaNet workflows for WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1, the Send Business Message task is synchronous: it waits for an HTTP status reply before proceeding to the next node in the workflow. In RosettaNet workflows for WebLogic Integration 7.0, the Send Business Message task is asynchronous: it does not wait for the HTTP status reply before proceeding to the next node in the workflow.

    Note: The PIP3A2_Customer workflow shown in Figure  2-3 is taken from the B2B RosettaNet Security sample. The B2B RosettaNet Security sample has been converted to run on WebLogic Integration 7.0. The workflows for it are located in the following file:
    SAMPLES_HOME/integration/samples/RN2Security/workflow/RN2Workflows.jar
    In this pathname, SAMPLES_HOME represents the WebLogic Platform samples directory. The workflows available there provide examples of the Send Message changes described in this section. If you have not altered the original PIP3A2 workflows supplied with earlier releases of WebLogic Integration, you can replace the PIP3A2 workflows in your application with the new workflows supplied with the B2B RosettaNet Security sample.

    To make an instance of the Send Business Message task in a RosettaNet workflow compatible with WebLogic Integration 7.0, complete the following steps:

    1. In the workflow, find the Send Business Action task to be converted.

    2. Create an Event node. In the toolbar, click Create Event and then click a location in the workflow diagram near the Send Business Action task.

      Figure 2-4 Create an Event Node


       

    3. Create a Task node. In the toolbar, click Create Task and then click a location in the workflow diagram near the Send Business Action task.

      Figure 2-5 New Task Node


       

    4. Double-click the Task node that you just created. The Task Properties window is displayed.

      Figure 2-6 Task Properties Window


       

    5. Enter a descriptive task name in the Task Name field, such as Wait for Http Status. Select the Created tab in the Actions section of the window, and click Add. The Add Action window is displayed.

      Figure 2-7 Add Action Window


       

    6. Expand the folder named Task Actions and select Set Task Due Date.

      The Set Task Due Date window is displayed.

      Figure 2-8 Setting the Timeout Value


       

    7. From the list shown under the heading Task for which to set due date list, select the current task. (If you are continuing work with the example introduced in step 6-e, the name of the task is Wait for Http Status.)

      In the Set to expression field, enter a formula that expresses the amount of time you want to designate as the timeout interval for receiving the reply. For example, to set the timeout to two hours, enter the expression shown in Figure  2-8.

      Notice the second argument in the DateAdd() method "h": it specifies the unit of time (hours). The third argument specifies the amount of time. Thus, in the example shown in Figure  2-8, the timeout interval specified is two hours.

    8. Select the Overdue Actions tab and click Add.

      The Add Action window is displayed.

    9. Expand the Task Actions folder, select the Mark Task Done, and click OK.

      The Mark Task as Done window is displayed.

    10. In the Task to mark as done list, select the current task. (If you are continuing to work with the example introduced in step 6-e, the name of the task is Wait for Http Status.) Click OK.

    11. Click OK in the Task Properties window. You are returned to the Workflow Design window for you application's workflow template.

    12. In the Workflow Design window, double-click the event node created in step 6-b. The Event Properties window is displayed.

    13. In the Description field enter an appropriate name for the event, such as StatusEvent. Select the RosettaNet Status Event in the Type field. The Event Properties window is updated to reflect the specific fields for the RosettaNet Status Event, as shown in Figure  2-9.

      Figure 2-9 Event Properties Window with RosettaNet Status Event


       

    14. In the Output Status Variable field, select a variable in which to store the HTTP Status.

      The Send Business Message sends a message. The RosettaNet Status Event waits until it receives the HTTP status reply, and then it stores that HTTP Status in the HTTP Status Output Status Variable. In the PIP3A2_Customer_RN2 example shown in Figure  2-5, the HTTP status reply is stored in the messageCode variable by the StatusEvent. Then the decision node tests the variable messageCode to determine whether the HTTP status is equal to 202. An HTTP status of 202 means the request has been accepted for processing, but the processing is not complete.

    15. In the Event Properties window select the Actions tab and click Add. The Add Action window is displayed.

    16. Expand the folder named Task Actions, select Mark Task As Done, and click OK. The Mark Task as Done window is displayed.

    17. Select the Task node created in step 6-c and click OK. (If you are continuing to work with the example provided in step 6-e, then the name of the task is Wait for Http Status.)

    18. In Event Properties window, click OK.

    19. Remove the link from the existing task that sends the business message to the decision node. (In this example, the decision node is labeled $messageCode <> 202. )

      In the toolbar, click Select Shape.

      Select the link and press the delete key.

    20. Link the existing task that sends the business message (the Send Message task in Figure  2-5) to the new event created in step 6-b.

      In the toolbar, click Draw Connection. Move the cursor into the middle of the existing Send Message task.

      Click the Send Message task, drag to the event created in the step 6-b, and release the mouse button. (If you are continuing to work with the example introduced in step 6-e, the name of the event is StatusEvent.)

      An arrow (pointing from the task that sends the business message to the new event) is added to the workflow design, as shown in the following figure.

      Figure 2-10 Linking the Task that Sends the Business Message to the Status Event


       

    21. Link the Send Message task to the task node created in step 6-c.

      In the toolbar, click Draw Connection. Move the cursor into the middle of the existing Send Message task.

      Click the Send Message task, drag to the task created in the step 6-c, and release the mouse button. (If you are continuing to work with the example introduced in step 6-e, the name of the task is Wait for Http Status.)

      An arrow (pointing from the Send Message task to the new task) is added to the workflow design, as shown in the following figure.

      Figure 2-11 Linking the Event Node to the New Task Node


       

    22. Link the new task node to the node that followed the original send message task. (In the example shown in Figure  2-11, link the new Wait for Http Status task to the existing decision node labeled $messageCode <> 202.)

      In the toolbar, click Draw Connection. Move the cursor into the middle of the new task node.

      Click the new task node, drag to the decision node, and release the mouse button. (In this example, the decision node is labeled $messageCode <> 202. )

      An arrow, pointing from the new task to the exiting decision node, is added to the workflow design, as shown in the following figure.

      Figure 2-12 Linking the New Task with the Existing Decision Node


       

      You have now finished converting an instance of the Send Business Message task in a RosettaNet workflow to be compatible with WebLogic Integration 7.0.

  7. Repeat step 6 a-v, for every instance of the Send Business Message task in your RosettaNet application workflows.

  8. Save the Workflow by clicking the X in the top right corner of the Workflow Design window. The Workflow Changed dialog box is displayed with the question "Do you want to save changes now?" Click Yes.

  9. When you have completed steps 5 to 8 for all the workflows in your application JAR file, we recommend you backup the workflows by exporting a new version of the JAR file. To do so, completing the following steps:

    1. From the Studio menu bar, choose Tools—>Export Package... .

    2. In the Export:Select File window, enter a full pathname to create an application JAR file that contains the converted RosettaNet workflow templates. Click Next. In the left pane, select the components to be exported. Click Export, then Close.

Note: For more detailed instructions on exporting workflows, see Importing and Exporting Workflow Packages in Using the WebLogic Integration Studio.

You have now finished converting your RosettaNet workflows.

 


Step 11. Deploy Your Application Views

If your application uses the application integration feature of WebLogic Integration, you must deploy your application views by following the auto-deploy procedure or by using the WebLogic Integration Application View Console. If your application does not use application integration, however, you can skip this step.

The procedure presented in this section is based on the assumption that the application views for your application are stored in the database that was converted to WebLogic Integration 7.0 in Step 6. Migrate Your Database. The procedures does not create new application views; it simply verifies that your application view settings are correct for the new environment and then deploys existing application views.

Warning: Before deploying your application views, you must configure your application integration adapter EAR file for you new domain (which you created in Step 5. Create a New Domain and Configure Database Information). For instructions, see Configuring Application Integration Adapter EAR Files.

To deploy your application view, complete one of the following procedures:

Deploy Using the Application View Console

To deploy your application views using the Application View Console:

  1. Go to the WebLogic Integration home directory and set the top-level WebLogic Integration environment variables by running the setenv script. The commands you must run to perform these tasks depend on which platform you are using:

  2. Start an instance of WebLogic Server using the new WebLogic Integration 7.0 domain (which you created in Step 5. Create a New Domain and Configure Database Information) by completing the procedure appropriate for your platform:

  1. Log on to the Application View Console:

    1. Open a new browser window.

    2. Enter the URL for your system's Application View Console. The actual URL you enter depends on your system. It should conform to the following format:
      http://host:port/wlai

      The Application View Console Logon page is displayed.

    3. Enter your WebLogic Server username and password, then click Login.

      The Application View Console is displayed. A list of application views is displayed in the Console.

    Note: For more detailed instructions, see "Step 1: Log On to the Application View Console" in Defining an Application View in Using Application Integration.

  2. Double-click an application view from the list. Click until you get to the end node of the application view. If the application view is currently deployed click Undeploy.

    The Summary page for the selected application view is displayed. The following figure shows the Summary page for the EastCoast.Sales.CustomerManagement application view, which is based on the example described in Configuring Application Integration Adapter EAR Files.

    Figure 2-13 EastCoast.Sales.CustomerManagement Application View


     

  3. Click Edit.

    The Application View Administration page is displayed.

    Figure 2-14 Application View Administration page


     

  4. In the right pane, click Continue.

    The Deploy Application View page is displayed.

    Figure 2-15 Deploy Application View


     

  5. Check that the Event Router URL is correct for your WebLogic Integration 7.0 environment. Make any necessary changes in the Event Router URL field.

  6. Click Deploy.

Auto-Deploy Application Views

This procedure automatically deploys application views that where stored in the database that was converted to the WebLogic Integration 7.0 in Step 6. Migrate Your Database.

To deploy your application views:

  1. Backup your WebLogic Integration 7.0 wlai.properties file for the new domain (created in Step 5. Create a New Domain and Configure Database Information.) by completing the following steps:

    1. Go to the DOMAIN_HOME\wlai directory (DOMAIN_HOME represents the pathname of the domain you created in Step 5. Create a New Domain and Configure Database Information).

    2. Rename the wlai.properties file to wlai.properties.70 by completing the procedure appropriate for your platform:

  2. Copy the WebLogic Integration 2.1 wlai.properties file into the new domain (created in Step 5. Create a New Domain and Configure Database Information). For example, if the WebLogic Integration 2.1 EAI Domain was used in your application, copy the wlai.properties file from the WLI_HOME\config\eaidomain\wlai directory to the DOMAIN_HOME\wlai directory, where WLI_HOME represents the WebLogic Integration 2.1 home directory, and DOMAIN_HOME represents the pathname of the domain you created in Step 5. Create a New Domain and Configure Database Information.

  3. In a text editor, open the wlai.properties file. As the value of the wlai.appView.deploy property, specify a comma-delimited list of the application views you want to deploy. For example, to deploy the EastCoast.Sales.CustomerManagement and WestCoast.Sales.CustomerManagement applications views, set the wlai.appView.deploy property as shown in the following code listing.
    wlai.appView.deploy=EastCoast.Sales.CustomerManagement, WestCoast.Sales.CustomerManagement

  4. Remove all the other properties except the wlai.appView.deploy property from the wlai.properties file.

  5. Start the instance of WebLogic Server using the new WebLogic Integration 7.0 domain created in Step 5. Create a New Domain and Configure Database Information by completing the procedure appropriate for your platform.

  1. Shut down the WebLogic Server instance for the new WebLogic Integration 7.0 domain (created in Step 5. Create a New Domain and Configure Database Information), by completing the procedure appropriate for your platform:

    In both cd command lines, DOMAIN_HOME represents the pathname of the new domain (created in Step 5. Create a New Domain and Configure Database Information), and domain represents the directory you created in Step 5. Create a New Domain and Configure Database Information.

  2. Restore the WebLogic Integration 7.0 wlai.properties file for the new domain by completing the following steps:

    1. Go to the DOMAIN_HOME\wlai directory (DOMAIN_HOME represents the pathname of the domain you created in Step 5. Create a New Domain and Configure Database Information).

    2. Rename the wlai.properties file to wlai.properties.21 by completing the procedure appropriate for your platform:

      Windows:

      rename wlai.properties wlai.properties.21

      UNIX:

      mv wlai.properties wlai.properties.21

    3. Copy the wlai.properties.70 file to wlai.properties by completing the procedure appropriate for your platform:

      Windows:

      rename wlai.properties.70 wlai.properties

      UNIX:

      mv wlai.properties.70 wlai.properties

 


Step 12. Start and Test Your WebLogic Integration Application

Start, run, and test your application using WebLogic Integration 7.0.

If you get an exception similar to the following, when starting the WebLogic Integration 7.0 server, you must regenerate your SerializedSystemIni.dat file.

weblogic.security.internal.FileUtilsException: Couldn't rename
DOMAIN_HOME\SerializedSystemIni.dat to
DOMAIN_HOME\SerializedSystemIni.dat42698.old

In this messages DOMAIN_HOME represents the pathname of the new domain that you created in Step 5. Create a New Domain and Configure Database Information."

For the procedure for generating a new SerializedSystemIni.dat file, see Generating a New SerializedSystemIni.dat File.

Importing WebLogic Integration 2.1 Repository Data Files

In Step 6. Migrate Your Database, the WebLogic Integration 2.1 repository data stored in your database was converted to the WebLogic Integration 7.0 format. This section is required only if you want to import additional repository information stored in repository files for WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1.

As part of the database migration in Step 6. Migrate Your Database, a new system identity, wlisystem, was created with a password of wlisystem. The new identity was stored in both the WebLogic Integration repository and the security realm. The wlisystem system identity replaces the wlcsystem and wlpisystem system identities for WebLogic Integration 2.1 and WebLogic Integration 2.1 SP1.

Before importing a WebLogic Integration 2.1 or WebLogic Integration 2.1 SP1 repository data file into the WebLogic Integration 7.0 repository, you must change the system-password attribute of the LC element in the repository data file to reflect the current password for wlisystem. (In WebLogic Integration 2.1 and WebLogic Integration 2.1 SP1, the value specified by the system-password attribute of the LC element is the password for the wlcsystem system identity.)

Set the system-password attribute of the WLC element in the repository data file to reflect the password of the wlisystem system identity, as shown in the following listing. (The password for the wlisystem system identity is wlisystem, unless you changed the wlisystem password using the B2B Console.)

Listing 2-6 Set system-password

<?xml version="1.0"?>
<!DOCTYPE wlc SYSTEM "WLC.dtd">
<wlc
large-msg-support-on="OFF"
large-msg-min-size="0"
large-msg-location="c:\temp"
system-password="wlisystem"
>

The same password must be specified for wlisystem in both the WebLogic Integration repository and the security realm. Failure to keep the two copies synchronized can cause problems when you boot the WebLogic Integration instance for WebLogic Integration. To make sure that the two copies remain synchronized, use the B2B Console whenever you need to change the password. When you make a change, the B2B Console automatically saves the password in both the security realm and the WebLogic Integration repository.

When you import a repository data file, the value of the system-password attribute overrides the password for the wlisystem system identity in the repository; the password for the wlisystem system identity in the security realm is not updated. If you change the wlisystem password using the WebLogic Integration Administration Console, the password for wlisystem is changed only in the security realm.

 

Back to Top Previous Next