|
|
Customizing WebLogic Integration
The following sections describe how to modify the default installation of WebLogic Integration:
For information about more advanced configuration options, such as clustering, see Deploying BEA WebLogic Integration Solutions.
WebLogic Integration Commands and Supporting Files
A number of commands and supporting files are provided with WebLogic Integration. Many of the commands are used by the WebLogic Integration database configuration wizard, and the RunSamples script described in Domain Configuration Requirements. Although such commands are not normally invoked in isolation, there are situations where you may need to modify a command, or troubleshoot the execution of a command. To help you familiarize yourself with the use of these commands, a command reference has been provided in WebLogic Integration Commands.
In addition, examples of the files that control the configuration and start up of a typical WebLogic Integration domain are provided in WebLogic Integration Sample Configuration Files.
Specifying a New Database for a Domain
The method you use to update the database for a domain depends on:
The following table summarizes the methods used in each situation.
Table 3-1 Database Update Methods
The following table provides the location of the information required to perform the preceding tasks.
Table 3-2 Finding Instructions for Updating a Database
Initializing the Database for a Domain
The method you use to initialize the database for a domain depends on whether the database is for the samples domain, or for a preconfigured production domain:
For additional information about the tasks performed by the RunSamples command and the WebLogic Integration database configuration wizard, see Domain Configuration Requirements.
Using the Database Configuration Wizard
As described in Configuring the Database for a Domain, the WebLogic Integration database configuration wizard is provided to automate database configuration tasks. The wizard operates on the domain specified when you execute the wliconfig.exe command. On Windows systems, domain-specific shortcuts are provided.
The following sections provide the information you need to use the wizard to initialize the database for a domain, specify a new database for a domain, or migrate a WebLogic Integration 2.0 database to WebLogic Integration 2.1:
Database Connection Information
The following table summarizes the information required to connect to each supported database type. The WebLogic Integration database configuration wizard prompts you to provide the values required to connect to the database you are configuring.
Table 3-3 Database Access Information
Database Configuration Options
The WebLogic Integration database configuration wizard provides the following options:
Note: Although this option is available for the samples domain, it does not complete all the tasks required to initialize the samples database. To initialize the database for the samples domain, you must execute the RunSamples command, as described in Configuring and Starting the Samples Domain.
How the Database Configuration Wizard Works
The WebLogic Integration database configuration wizard updates the environment variables set by the setDBVars and setDBVarsExt commands for the domain, updates the config.xml file to reflect the database access information provided, and invokes the commands required to perform the selected tasks.
For detailed information about the environment variables and command files used, see the wliconfig command in WebLogic Integration Commands.
Database Configuration Modes
Like the WebLogic Integration installer, the WebLogic Integration database configuration wizard supports the following modes:
Follow the procedure appropriate for your system, as described in the following sections:
Using the Wizard in Graphical Mode
The following procedure describes how to update your database configuration using the WebLogic Integration database configuration wizard in graphical mode.
To configure the database for a domain:
The Choose Configuration Option dialog box is displayed. Go to step 3.
cd WLI_HOME/bin
wliconfig
The Choose BEA Home Directory dialog box is displayed.
The Choose Domain to Configure dialog box is displayed.
The Choose Configuration Option dialog box is displayed, as shown in the following figure.
Figure 3-1 Choose Configuration Option Dialog Box
Note: If you are on a UNIX system, and are connecting to a Microft SQL Server database, you will be unable use the wizard to initialize the database because there is no Microsoft SQL client for UNIX. Instead, you will need to initialize the database from a Windows system.
The Database Selection dialog box is displayed. This dialog box reflects the database that is currently configured for the domain. For example, if Oracle is selected for the domain during installation, that option is selected now, as shown in the following figure.
Figure 3-2 Database Selection Dialog Box
Note: On UNIX systems, Cloudscape is not an option.
The results are as follows:
Figure 3-3 Database Configuration Dialog Box
The results are as follows
Figure 3-4 Locate Database Client Dialog Box
Figure 3-5 Open Dialog Box
A message confirming that the appropriate client application was found is displayed, as shown in the following figure.
Figure 3-6 Confirmation Message
Note: If an error message is displayed indicating that the client application was not found, click OK to dismiss the message, and then Click Browse to locate the correct directory.
When the changes are is complete, the Changes Successful dialog box is displayed, as shown in the following figure.
Figure 3-7 Changes Successful Dialog Box
Note: If there is an error in the execution of the selected action, an Error dialog box is displayed. This dialog box will indicate the location of a log file. View the log file to determine how to address the problem.
Using the Wizard in Console Mode
This section summarizes the console-mode database configuration procedure, a set of steps that emulates the graphical installation procedure.
To start the database configuration wizard in console mode, enter the following commands at the prompt:
cd WLI_HOME/bin
wliconfig
The following listing shows the console-mode prompts and responses for the Create Database option described in Database Configuration Options. (Responses are indicated in bold.)
The prompts that are presented will vary from those shown depending on your responses to the Please Select Configuration Option: and Please specify the database type to configure: prompts.
Listing 3-1 Database Configuration Procedure in Console Mode
===============================================================================
BEA WebLogic Integration Database Configuration 1.0.0
-------------------------------------------------------------------------------
===============================================================================
Choose BEA Home Directory
--------------------------------------------------
->1- C:\bea
2- C:\bea
Existing BEA Home(1): 1
===============================================================================
Choose Domain
--------------------------------------------------
1- bpmdomain
2- eaidomain
3- samples
4- wlidomain
Please Select the Domain to Configure: 2
===============================================================================
Configuration Selection
--------------------------------------------------
1- Switch Database
2- Create Database
3- Migrate Database
Please Select Configuration Option: 2
===============================================================================
Database Selection
--------------------------------------------------
Please specify the database type to configure.
1- Oracle
->2- Microsoft SQL Server
3- Sybase
Select a number or <Enter> for default(2): 1
Oracle Server Hostname: oraclehost
Oracle Server Port Number: 1521
Oracle User: myuser
Oracle Password: mypassword
Oracle SID: nj908
Oracle Net Service Name: oraclehost.world
Please enter the location of your Oracle client installation: c:\oracle
Searching for Oracle client(Sqlplus.exe)...
Found client Sqlplus.exe at c:\oracle\sqlplus.exe
->1- Use Located Client
2- Choose new Location
Please choose a number(1): 1
===============================================================================
Switching Database please wait...
--------------------------------------------------
===============================================================================
Creating Database please wait...
--------------------------------------------------
===============================================================================
Finalizing changes, please wait...
--------------------------------------------------
Your configuration changes were successful. Press Enter to exit the Configuration Utility.
Updating the Database Configuration from the WebLogic Server Administration Console
Although the database configuration wizard should be used to update the database configuration for any of the preconfigured domains, there may be circumstances under which it is necessary to update the configuration from the WebLogic Server Administration Console. This section describes the procedure for doing so.
You should be aware that if you use this method to change to a new database, you will be unable to use the wizard, the createDB command, or the RunSamples command to create the tables in, or to populate, the database. These commands rely on settings for certain environment variables and the database access information stored in the config/domain_name/dbInfo directory. Unless you update this information manually, the wizard, the createDB command, and the RunSamples command will not work on the new database.
If you use the WebLogic Server Administration Console to update the database configuration, you can create the tables by executing the database-specific SQL scripts that are located in the WLI_HOME/dbscripts directory. Once you have created the tables, you can use the Bulk Loader or the B2B Console to import system data from the WLI_HOME/dbscripts/SystemRepData.xml file.
Updating the JDBC Connection Pool
To update the WebLogic Integration JDBC connection pool:
Updating the RDBMS Realm Properties
To update the RDBMS realm properties:
Database Access Parameters
The following table summarizes the database access parameter information required to configure the JDBC connection pool from the WebLogic Server Administration Console.
Table 3-4 JDBC Connection Pool Parameters
Database Access URL Format
The JDBC connection pool URL includes the following:
The following list provides a sample URL for each supported database:
Updating the WebLogic Integration Environment
The environment variables used by WebLogic Integration are set by the setEnv.cmd (Windows) or setEnv.sh (UNIX) file. This file is located in the WebLogic Integration installation directory (WLI_HOME). An example of this file is provided in WebLogic Integration Sample Configuration Files.
The variables in the setEnv file are set when you install WebLogic Integration and normally do not need to be updated. If you must update the environment, however, you can do so by completing the following procedure.
To update the WebLogic Integration environment:
Navigate to the WebLogic Integration installation directory, right-click setEnv.cmd, and then select Edit from the shortcut menu to open the file in Notepad.
Go to the appropriate domain directory and open setEnv.sh in your preferred text editor.
For additional information, see WebLogic Integration Sample Configuration Files.
When you execute the startWeblogic command (as described in Starting WebLogic Integration) the setEnv command is invoked and the environment variables become effective.
Configuring a Custom Java Message Service Queue
You can create custom Java Message Service (JMS) queues and run the message driven bean generator utility to generate a deployable Java Archive (JAR) file that listens on the custom queue. Configuring a custom queue involves the following steps:
For more information about creating JMS queues, see your WebLogic Server 6.1 documentation.
To create the custom JMS queue:
Note: Do not use priority settings for ordered queues.
To run the mdbgenerator utility:
mdbgenerator -queue queue_name [-min number] [-max number]
[-order number] [-transact] [-validate] [-timeout seconds] [-help]
The arguments for the mdbgenerator command are listed in the following table.
Table 3-5 mdbgenerator Command-Line Arguments
The queue_name-mdb-generator.jar file is created in the bin directory.
Note: A sample of the config.xml file for the for the WebLogic Integration domain (config\wlidomain) is provided in WebLogic Integration Sample Configuration Files.
<Application Name="WLI" Path="WLI_HOME/lib>
After all other <EJB Component> elements, add the following line:
<EJBComponent Name="queue_name-mdb-generator.jar" Targets="myserver" URI="queue_name-mdb-generator.jar" DeploymentOrder="X"/>
Note: The config.xml file is case-sensitive. Be sure to enter text using the proper case.
Deploying EJBs and Java Classes for Business Operations
To deploy EJBs and make the associated business operations available for use in WebLogic Integration, you must perform the following steps:
For more information about the EJB deployment descriptor files, see "Deploying EJBs in the EJB Container" in Programming WebLogic Enterprise Java Beans in the BEA WebLogic Server documentation set at the following URL:
http://download.oracle.com/docs/cd/E13222_01/wls/docs61/ejb/deploy.html
This step is described in Adding an EJB to the WLI Application. The initial WLI application configuration is shown in Figure A-4 in WebLogic Integration Sample Configuration Files.
To deploy custom Java classes and make them available in your WebLogic Integration applications, you must add the Java Archive (JAR) file containing the custom Java classes to your CLASSPATH. This procedure is described in Adding Java Classes to the CLASSPATH.
Adding an EJB to the WLI Application
To add an EJB to the WLI application, you must update the configuration file, config.xml, located in WLI_HOME/config/domain_name, to specify the associated deployment descriptor files as part of the WebLogic Integration application. You must then restart the server, as described in Getting Started.
To specify the EJB descriptor files, use the <EJBComponent> element. You can control the order in which the EJB JAR files are deployed using the DeploymentOrder attribute. In general, if EJB A is dependent upon EJB B, then EJB B must be deployed first.
The following code listing is excerpted from the samples domain config.xml showing the information required to deploy an EJB called MyEJB.jar. This file is located in the WLI_HOME/config/samples directory. Notable lines of code are shown in bold.
Listing 3-2 Adding an EJB to the WLI Application
.
.
.
<Application Deployed="true" Name="WLI" Path="E:\bea\wlintegration2.1\lib">
<EJBComponent DeploymentOrder="0" Name="repository-ejb.jar"
Targets="myserver" URI="repository-ejb.jar"/>
<WebAppComponent Name="XTPlugin" Targets="myserver" URI="wlxtpi.war"/>
<WebAppComponent Name="wlai" ServletReloadCheckSecs="1"
Targets="myserver" URI="wlai.war"/>
<EJBComponent DeploymentOrder="2" Name="wlpi-master-ejb.jar"
Targets="myserver" URI="wlpi-master-ejb.jar"/>
<EJBComponent DeploymentOrder="1" Name="wlpi-ejb.jar"
Targets="myserver" URI="wlpi-ejb.jar"/>
<EJBComponent DeploymentOrder="4" Name="wlc-wlpi-plugin.jar"
Targets="myserver" URI="wlc-wlpi-plugin.jar"/>
<EJBComponent DeploymentOrder="8" Name="wlai-admin-ejb"
Targets="myserver" URI="wlai-admin-ejb.jar"/>
<EJBComponent DeploymentOrder="5" Name="pobean.jar"
Targets="myserver" URI="pobean.jar"/>
<WebAppComponent Name="b2bconsole" ServletReloadCheckSecs="1"
Targets="myserver" URI="b2bconsole.war"/>
<EJBComponent DeploymentOrder="3" Name="wlpi-mdb-ejb.jar"
Targets="myserver" URI="wlpi-mdb-ejb.jar"/>
<EJBComponent DeploymentOrder="7" Name="wlai-ejb-server"
Targets="myserver" URI="wlai-ejb-server.jar"/>
<EJBComponent DeploymentOrder="6" Name="wlxtpi.jar"
Targets="myserver" URI="wlxtpi.jar"/>
<EJBComponent DeploymentOrder="9" Name="wlaiplugin-ejb.jar"
Targets="myserver" URI="wlaiplugin-ejb.jar"/>
<WebAppComponent Name="WLAIPlugin" Targets="myserver" URI="wlai-plugin.war"/>
<EJBComponent DeploymentOrder="10" Name="sampleplugin-ejb.jar"
Targets="myserver" URI="sampleplugin-ejb.jar"/>
<WebAppComponent Name="com.bea.wlpi.SamplePlugin"
Targets="myserver" URI="sampleplugin.war"/>
<EJBComponent DeploymentOrder="11" Name="MyEJB.jar"
Targets="myserver" URI="MyEJB.jar"/>
</Application>
.
.
.
For more information about updating the config.xml file, see BEA WebLogic Server Configuration Reference in the BEA WebLogic Server documentation set at the following URL:
http://download.oracle.com/docs/cd/E13222_01/wls/docs61/config_xml/index.html
Adding Java Classes to the CLASSPATH
You can add the JAR file for your custom Java classes to the server CLASSPATH in one of the following ways:
Adding the JAR File to the setEnv Command File
To add the JAR file to the setEnv command file:
set WLISERVERCP=%WLISERVERCP%;%JAVA_HOME%\lib\tools.jar
To make a Java class available to client applications, you can also add a Java class to the WLICP variable that is used to set the CLASSPATH for WebLogic Integration clients.
Note: You may notice that the WLISERVERCP environment variable does not appear in the startWeblogic command file. For each domain, a setDomainNameData file is invoked after the setEnv command file. The value of the WLISERVERCP environment variable is transferred to the SVRCP environment variable in this command file.
Adding the JAR File to the startWebLogic Command File
To add the JAR file to the startWeblogic command file:
REM Start weblogic
%JAVA_HOME%\bin\java %DB_JVMARGS% -Xmx256m -classpath %SVRCP%...
set SVRCP=%SVRCP%;MyJAR
Here, MyJAR is the complete pathname for the JAR file that contains the Java classes.
Configuring BPM to Support Null Variables
Support for null variables can be enabled at server startup by modifying the Java command in the startWeblogic command to include the following:
-Dwli.bpm.server.evaluator.supportsNull=true
When added to the Java command that starts the server, this option turns on null variable support for BPM. If this option is set to false, or if it is omitted from the command, then support for null variables is disabled.
After the server has started in a domain, the first time an expression is evaluated, a message indicating the status of null variable support is displayed:
The server displays this message only once, the first time an expression is evaluated.
The following sections summarize how variable initial values and expression evaluation work when null support is enabled, and when it is disabled.
wli.bpm.server.evaluator.supportsNull=true
When wli.bpm.server.evaluator.supportsNull=true, the following rules apply:
For example, if the workflow variables $a and $c have a null value, and $b has a non-null value, then:
$a=NULL true
$a=$c true
$a<>NULL false
$b<>NULL true
$b>$a false
The following section describes the usage rules that apply when wli.bpm.server.evaluator.supportsNull=false. It is important that you understand the differences before you set this option to true.
If you have workflows that were defined in a previous version, or with null support disabled, these workflows will not work as they did before if they rely, in any way, on functionality that is affected. You must reexamine any legacy workflows and initialize appropriate workflow variable values, otherwise the workflow may not run when you enable null variable support.
wli.bpm.server.evaluator.supportsNull=false
When wli.bpm.server.evaluator.supportsNull=false, the WebLogic Integration process engine operates exactly as it has in previous releases. The following rules apply:
For example, if the workflow variables $a and $c have a null value, and $b has a non-null value, then:
$a=$c false
$a<>$c false
$b<>$c false
$b>$a false
String ""
Boolean false
Integer 0
Double 0.0
Date Current date
Entity null
Session null
Object null
XML null
Understanding the BPM Security Model
The security model provided by WebLogic Integration for business process management (BPM) functions is distinguished by the following characteristics:
When you install WebLogic Integration, the software is configured by default to use a fileRealm security realm. In this type of realm, default users, groups, and access control lists (ACLs) are maintained in the fileRealm.properties file located in the domain directory.
A default RDBMSRealm is also configured, but is not initially enabled. If you chose to enable this realm, then users and groups are maintained in the database configured for the WebLogic Integration repository. When you use the WebLogic Integration database configuration wizard to specify a new database, the configuration for both the JDBC connection pool and the RDMBSRealm are updated.
The BPM-defined ACL objects are managed differently from users and groups. Even if you enable the RDBMSRealm, the ACL objects are stored in the fileRealm (the fileRealm.properties file) and must be managed through the WebLogic Server Administration Console.
You can use the existing fileRealm, enable the RDBMSRealm, or configure an alternate security realm. For an overview of the supported WebLogic Server security realm types, see "Security Fundamentals" at the following URL:
http://download.oracle.com/docs/cd/E13222_01/wls/docs61/security/concepts.html
No matter what type of security realm you configure, you can continue to create users, organizations, and roles through the WebLogic Integration Studio, as long as the security realm you configure conforms with the guidelines described in Security Realm Guidelines.
The procedure for enabling the RDBMSRealm is provided in Enabling the RDBMS Security Realm.
The procedure for creating a custom security realm is provided in Configuring a Custom Security Realm. If you are creating another type of security realm (for example, NT or UNIX), see the WebLogic Server documentation for instructions.
BPM User Groups and Permissions
To support BPM functionality, the default users described in WebLogic Integration Users and Passwords, are organized into user groups. There are three types of user groups:
The default groups and assigned members are summarized in the following tables.
Table 3-6 Permission Groups and Members
Table 3-7 System Groups and Members
System Group |
Members |
---|---|
everyone |
admin, joe, system, mary, wlcsystem, wlpisystem |
wlpiAdministrators |
admin, joe, system, mary, wlpisystem |
wlpiUsers |
admin, joe, system, mary, wlcsystem, wlpisystem |
Table 3-8 Role Groups and Members
Role Group |
Members |
---|---|
AccountingCDE |
admin, joe |
CustomerServiceCDE |
admin |
Role1Org1 |
admin, joe, mary |
Role2Org1 |
admin, joe, mary |
ShippingCDE |
admin, mary |
Security Realm Guidelines
You can create an alternate security realm as long as it conforms to the following guidelines:
For procedures on creating an alternate security realm, see your WebLogic Server 6.1 documentation.
Once a manageable security realm is populated in conformance with the preceding guidelines, and configured as described in the following section, you can create additional users, roles, and organizations, and assign permissions to users and roles through the WebLogic Integration Studio. For information and procedures, see Administering Data in Using the WebLogic Integration Studio.
Enabling the RDBMS Security Realm
To change the security realm from the default fileRealm to the RDBMSRealm:
Note: If the following message is displayed, click Cancel to dismiss.
Figure 3-8 Leaving the Page? Confirmation
Note: Do not delete any entries that begin with acl. The ACL objects are always maintained in the fileRealm.properties file, whether or not the RDBMSRealm is enabled.
Configuring a Custom Security Realm
Configuring a custom security realm involves the following procedures:
The following sections describe each procedure.
Creating the Custom Realm
To create a custom security realm:
The Configuration tab for the new realm is displayed.
Note: You can ignore the other tabs and attributes; the settings are not used.
Configuring the Caching Realm
To configure the caching realm:
Enabling the WLPI Caching Realm
Note: If the following message is displayed, click Cancel to dismiss.
Figure 3-9 Leaving the Page? Confirmation
Removing the RDBMS Realm
This is an optional step. To remove the RDMBS realm:
Updating Passwords
To ensure system security, update the default passwords listed in WebLogic Integration Users and Passwords, as described in the following procedures.
Warning: The wlcsystem user name and password are used in the WebLogic Integration run-time environment and are stored in the WebLogic Integration repository. This password must be updated using the B2B Administration Console. Do not use the WebLogic Server Administration Console to update this password.
Updating the system Password
The password for the system login for the active domain can be changed through the WebLogic Server Administration Console, as described in the following procedure.
To change the password, complete the following procedure:
For example, to change the system password, enter system.
Warning: The startWeblogic.cmd (Windows) or startWeblogic (UNIX) command is configured for automatic login. If you change the password for system, you must modify the password specified in this file. See the sample startWebLogic file in WebLogic Integration Sample Configuration Files.
Updating the BPM Passwords
You can update the passwords for the BPM users admin, joe, mary, and any new users you create in the Studio application, through the WebLogic Server Administration Console, as described in the previous section.
Updating the wlcsystem Password
The password for the wlcsystem user can be changed only through the B2B Console, as described in the following procedure. Do not update this password from the WebLogic Server Administration Console.
The Security tab is displayed, as shown in the following figure. The content of the System Password field is the password for the wlcsystem user.
Figure 3-10 B2B Configuration Security Tab
Customizing Mail Session Properties
The mail session properties you specify during installation are used to set up a basic mail session configuration for each of the preconfigured domains. You can modify the mail session configuration by updating existing settings, or by adding properties. The following procedure describes how to update the mail session properties for any domain.
To update the mail session properties for any domain, complete the following procedure:
Figure 3-11 wlpiMailSession Configuration Tab
The following table provides descriptions of the properties that can be set.
Table 3-9 Mail Session Properties
Changing the Root Directory for a Domain
Some components of WebLogic Integration expect to find files, such as the XML DTD, in the root directory. By default, the root directory for a domain is the parent directory of the config/domain_name domain directory.
For example, for the WebLogic Integration domain, BEA_HOME/wlintegration2.1/config/wlidomain, the root directory (also known as the runtime directory) is BEA_HOME/wlintegration2.1.
Figure 3-12 Domain Root (Runtime) Directory
Because the server root directory is the installation directory (WLI_HOME), many files can accumulate in this directory, particularly if you are working with more than one of the preconfigured domains. To work around this problem, you can designate the domain directory as the current directory (config/domain_name) by changing the value of the weblogic.RootDirectory property in the startWeblogic command script for the domain. If you change the root directory for the samples domain, there are special considerations. Sample code that requires access to a file must specify the exact location of the file. One possible approach is to make all files relative to the server root directory and prepend the name of the server root directory to the name of every file. The following listing shows how to implement this workaround. Listing 3-3 Prepending Root to Filenames
import java.io.*;
public class Sample {
static File rootDir;
// Get the server root directory
static {
String rootPath = System.getProperty("weblogic.RootDirectory");
if (rootPath != null){
rootDir = new File(rootPath);
}
}
// Helper method that returns a properly rooted File
public static File setRoot(String fileName){
File f = new File(fileName);
if (rootDir == null || f.isAbsolute()){
return f;
}
return new File(rootDir, fileName);
}
// One method that uses the helper
public void do(){
String file = "config/samples/data/PO.xml";
try {
FileInputStream fis = new FileInputStream(setRoot(file));
...
} catch (IOException e){
...
}
}
}
Using an Alternate Character Set
If you are running WebLogic Integration in another locale, no special configuration is required, as long as your database, your operating system, WebLogic Integration, and the WebLogic Integration client applications (the Studio, Worklist, and Format Builder), are all running in the same locale.
The only change required after installation is to your B2B preferences. To enable the B2B Console to allow input from an alternate character set, you must verify that language and character set preferences are properly set. For details about setting the language and the default character set for the language, see "Setting Preferences" in Configuring B2B Integration in the Online Help for the WebLogic Integration B2B Console.
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|