Skip Headers
Oracle® BPEL Process Manager for Non-Oracle Application Servers Installation Guide
10g Release 3 (10.1.3.3) for UNIX and Microsoft Windows

Part Number E10538-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

3 Installing Oracle BPEL Process Manager with JBoss Application Server

This chapter provides the requirements and procedures for installing Oracle BPEL Process Manager with JBoss Application Server.

This chapter contains these topics:

See Also:

The following documentation after completing installation:

3.1 Overview

You can install and use Oracle BPEL Process Manager with the JBoss Application Server.

The JBoss enables you to set up, operate, and integrate e-business applications across multiple computing platforms using Web technologies. The JBoss includes both the run-time components and the tools to develop and design applications.

Oracle BPEL Process Manager provides the infrastructure for creating standards-based business processes, which can span heterogenous environments, include human intervention, and exhibit efficient asynchronous and synchronous behavior. A key enabler of Service-Oriented Architecture it also provides services that can be used for integration and notifications.

Oracle BPEL Console is the monitoring environment for Oracle BPEL Process Manager. You can run, manage, and test your deployed BPEL process using the Oracle BPEL Console. Oracle BPEL Console provides a Web-based interface for management, administration, and debugging of processes deployed to Oracle BPEL Server.

The installation of Oracle BPEL Process Manager for JBoss Application Server consists of the following high-level steps:

  1. Create the Oracle BPEL Process Manager Schema in the Oracle Database

    This step involves installing Oracle Database and creating the required Database schemas for the Dehydration store for BPELPM on Oracle Database.

  2. Installation of the Oracle BPELPM Standalone 10.1.3.1 for OC4J

    This is the standalone version of BPELPM, which comes with an embedded OC4J J2EE container. Further steps will configure this BPELPM to work on JBoss Application Server.

  3. Apply SOA Suite Patchset 10.1.3.3 on BPELPM Standalone 10.1.3.1

    This patchset upgrades the existing 10.1.3.1.0 installation to 10.1.3.3.0

  4. Configure BPELPM Standalone on JBoss Application Server

    This step involves running a command-based script, which will configure the Oracle BPELPM Standalone installed earlier to run on JBoss Application Server. The script performs the following steps:

    • Create a JBoss domain called BPELDomain

    • Create an application server called oracleBPELServer

    • Configure the oracleBPELServer classpath with Oracle BPELPM Binaries

    • Create and configure required DataSources/JMS Resources etc.

    • Deploy the required Applications for BPEL Console, BPEL Admininstration etc.

    The above steps, which are further detailed in the "Installation and Configuration" section, summarize the installation and configuration of BPELPM on JBoss Application Server platform.

3.2 System and Database Requirements

Table 3-1 describes the system requirements for using Oracle BPEL Process Manager with the JBoss.

Table 3-1 Oracle BPEL Process Manager System Requirements

Element Requirement

JBoss


Version 4.0.5 + jbossws-1.2.1

Oracle BPEL Process Manager for OC4J

Version 10.1.3.1

Note: Refer to Step 2: Install Oracle BPEL Process Manager 10.1.3.1 for OC4J for installing Oracle BPEL Process Manager for OC4J. Apply SOA Suite patchset 10.1.3.3 on BPELPM Standalone 10.1.3.1.

Web browsers

Internet Explorer 6.0 or Mozilla Firefox 2.0

Operation systems

Microsoft Windows XP, Microsoft Windows 2003, Red Hat Enterprise Linux release 3, and Red Hat Enterprise Linux release 4

Dehydration store database

Oracle9i (9.2.0.8) or higher

Oracle Database 10g (10.1.0.5) or higher

Oracle Database 10g (10.2.0.2) or higher

Oracle Database 10g Express Edition 10.2.0.1

Oracle Database 10.1.2.2

Note: This certification matrix reflects the Oracle BPELPM certification on Oracle Application Server, and may vary with the application server being used. Confirm the certification matrix of the application server with Oracle Database version.


3.3 Installation and Configuration

This section describes the steps involved in installing and configuring the Oracle Database, creating a schema in the Database, and installing and configuring JBoss.

This section contains the following topics:

3.3.1 Step 1: Configure the Oracle Database

Follow these instructions to install Oracle Database 10g.

Note:

These instructions assume that you have obtained Oracle Database 10g version 10.1.0.2 and Oracle Database 10g Patch version 10.1.0.5.

For all other Database versions, refer to http://www.oracle.com/technology/documentation/index.html.

  1. Install Oracle Database 10g 10.1.0.2.

  2. Open SQL*Plus and log in as a user with the SYSDBA privilege.

  3. Shut down the database:

    SQL> SHUTDOWN IMMEDIATE
    
  4. Install the Oracle Database 10g 10.1.0.5 patch in the same Oracle home in which you installed Oracle Database 10g.

  5. If using Linux only, then log in as the root user and run the following command from the operating system command prompt:

    /etc/init.d/init.cssd stop
    
  6. Start the database in upgrade mode in SQL*Plus:

    SQL> STARTUP UPGRADE
    
  7. Run the following script:

    SQL> @ORACLE_HOME/rdbms/admin/catpatch.sql;
    
  8. Shut down the database:

    SQL> SHUTDOWN IMMEDIATE
    
  9. Restart the database:

    SQL> STARTUP
    
  10. Run the following script:

    SQL> @ORACLE_HOME/rdbms/admin/utlrp.sql;
    

3.3.2 Step 2: Install Oracle BPEL Process Manager 10.1.3.1 for OC4J

This is the standalone version of BPEL. Please note the basic SOA Suite installation cannot be used for this setup. You can download this standalone version of Oracle BPEL Process Manager 10.1.3.1 at

http://www.oracle.com/technology/software/products/ias/bpel/index.html

Note:

The file names start with soa although it really is a BPEL download file. For example, the name of the Windows download file for Oracle BPEL Process Manager 10.1.3.1 for OC4J appears as soa_windows_x86_bpel_101310.zip.

You need to install BPEL into it's own directory outside of JBoss. The JBoss installation will refer to binaries and property files from this installation. This external installation will need to be there permanently, it's not a temporary staging area. Even though it also contains OC4J, you will not be starting and stopping it.This is an important prerequisite prior to the JBoss install.

3.3.3 Step 3: Create the Oracle BPEL Process Manager Schema in the Oracle Database

Note:

The scripts to configure Oracle BPEL Process Manager on the JBoss require that the JAVA_HOME environment parameter be set prior to running the script.
  1. Navigate to the Disk1\install\soa_schemas\irca folder in the BPEL Installation Setup files directory.

  2. Set ORACLE_HOME to point to the Oracle Database Installation location. For example,

    set ORACLE_HOME=c:\Oracle10g
    
  3. Enter irca bpel.

    This runs the irca script packaged with the Oracle BPEL Process Manager installation.

  4. Enter sys password when prompted.

    The orabpel schema is loaded on the Oracle Database.

3.3.4 Step 4: Apply SOA Suite Patchset 10.1.3.3 on Oracle BPELPM Standalone 10.1.3.1

You need to download the SOA Suite patchset 10.1.3.3 from MetaLink and then apply the patchset on BPELPM Standalone 10.1.3.1. Perform the following steps:

  1. Log in to OracleMetaLink at http://metalink.oracle.com. The OracleMetaLink home page is displayed.

  2. Click Patches & Updates. The Patches & Updates page is displayed.

  3. Click Simple Search.

  4. In the Search By field, enter 6148874. The details of the patchset 6148874 are displayed.

  5. Follow the instructions in the patchset to install the patchset on the BPELPM Standalone 10.1.3.1.

    Caution:

    You should not start/restart the BPELPM instance after applying the patch.

3.3.5 Step 5: Install JBoss Application Server Version and Configure BPELPM Standalone for JBoss

Note:

These instructions assume that you have obtained JBoss Application Server.
  1. Install JBoss Application Server.

  2. Download the Orabpel_10133_Jboss.zip file, which enables you to port Oracle BPEL Process Manager in JBoss Application Server at http://www.oracle.com/technology/software/products/ias/htdocs/101310.html and unzip to the orabpel_10133_Jboss folder.

    Note:

    • The directory to which you download the Oracle BPEL Process Manager should be the same host on which the JBoss Application Server is installed.

    • Unzip the orabpel_10133_Jboss folder as a non-root user (same user as used to install Oracle BPEL Process Manager 10.1.3.1 for OC4J). For example, Oracle.

  3. Modify the following mandatory installation properties in the orabpel_10133_Jboss\cfg\constants.properties file:

    Note:

    Mandatory properties cannot have a comment tag or contain blank values. Failure to follow this requirement results in errors during installation. Also, ensure that you enter the appropriate information for each of the fields. Any typo will cause errors during installation.
    Property Description
    JBOSS_HOME The directory path in which JBoss Application Server is installed.

    For example, JBOSS_HOME=C:\jboss-4.0.5.GA.

    BPEL_HOME The directory path in which Oracle BPEL Process Manager is installed.

    For example, BPEL_HOME=C:\product\10.1.3.1\OraBPEL_1\bpel

    BPEL_INSTALL_ROOT The directory containing the JDK of Oracle BPEL Process Manager.

    For example, if the Oracle BPEL Process Manager home directory is C:\OraBPELPM_1\integration\orabpel, then BPEL_INSTALL_ROOT is typically C:\OraBPELPM_1.

    DRIVER_TYPE The JDBC driver type (thick or thin).

    For example, DRIVER_TYPE=thin.

    HOSTNAME The name or IP address of the host on which Oracle Database 10g is installed.

    For example, HOSTNAME=stda.us.oracle.com.

    PORTNUMBER The port number of the host on which Oracle Database 10g is installed

    For example, PORT_NUMBER=1087.

    SID The service name of Oracle Database 10g.

    For example, SID=ORCL.

    JAASAUTHUSERID The user name for accessing the Oracle BPEL Process Manager schema.

    For example, JAASAUTHUSERID=orabpel

    JASAUTHPASSWD The Host name of the proxy server.

    For example, JASAUTHPASSWD=orabpel

    PROXYSET Indicates if a proxy server is being used (true or false)

    For example, PROXYSET=true.

    PROXYHOST The Host name of the proxy server.
    PROXYHOST The name or IP address of the host on which the proxy server is installed.

    For example, PROXY_HOST=www-proxy.us.oracle.com.

    PROXY_PORT The Port where the proxy server is running.

    For example, PROXY_PORT=80

    NON_PROXY_HOST The addresses for which the proxy server must be bypassed that are divided by a | symbol.

    For example, NON_PROXY_HOST=*.oracle.com|*.oraclecorp.com|localhost|127.0.0.1|10.177.251.61|rajeshc-pc|rajeshc-pc.idc.oracle.com


  4. Run the following script from orabpel_10133_Jboss folder at the operating system command prompt:

    For... Run...
    Windows XP setup.bat
    Linux setup.sh

    This script creates the following servers Oracle BPEL Server(oracleBPELServer) and Decision Server (decisionServer). The script also configures the required applications, Queues, database connections, adapters, and JCA's.

    Installation progress is logged to the Jboss_Installables\bin\logs\output.log file.

  5. Apply the jbossws-1.2.1 patch.

    By default, Jboss4.0.5 comes with the webservice deployer 1.0.4(jbossws-1.0.4), there are issues while running webservices using this deployer, hence you need to upgrade to jbossws1.2.1.

    You can download jbossws-1.2.1.GA.zip at http://labs.jboss.com/jbossws/downloads

    After the download, follow the instructions given in Install.txt file, and apply the patch to the already configured oracleBPELServer.

  6. Start the oracleBPELServer as follows:

    For... Run...
    Windows XP JBOSS_HOME\bin\startServer.bat -c oracleBPELServer
    Linux JBOSS_HOME/bin/startServer.sh -c oracleBPELServer

  7. Start the decisionServer as follows:

    For... Run...
    Windows XP JBOSS_HOME\bin\startServer.bat -c decisionServer
    Linux JBOSS_HOME/bin/startServer.sh -c decisionServer

  8. Log in to the BPEL Console at the following URL, using Jboss as the username and password:

    http://localhost:9700/BPELConsole

3.4 Design-time Deployment Support for BPELPM 10.1.3.3 on JBoss Application Server

This section describes the various design-time support functions available on JBoss Application Server, for the deployment of J2EE applications in JDeveloper. You can deploy BPELPM components on JBoss Application Server by using the following two methods:

3.4.1 From the BPELPM Developer Prompt Using Ant

You can use ant in the BPELPM developer prompt to deploy J2EE applications. This section contains the following topics:

3.4.1.1 Prerequisite Checks

  1. Ensure that bpelPlatform is set to jboss_3 in the BPEL_HOME\bpel\system\config\collaxa-config.xml file.

  2. Ensure that the following properties are set in BPEL_HOME\bpel\utilities\ant-orabpel.properties file:

    • platform to jboss_3

    • admin.user to valid user in JBoss realm

    • admin.password to the password of the above user

    • jndi.url to jnp://localhost:9099

    • jndi.InitialContextFactory to org.jnp.interfaces.NamingContextFactory

    Note:

    If the admin.user property is not set correctly, then the deployment may throw authentication errors.

3.4.1.2 Steps to Deploy Using the BPELPM Prompt

Follow these instructions to deploy BPELPM from the developer prompt using ant:

  1. Open a BPELPM Developer prompt.

  2. Run ant.sh/bat from the BPEL_HOME\bpel\system\appserver\oc4j\ant\bin directory of the BPEL application.

    Note:

    For more information, refer to C:\product\10.1.3.1\OraBPEL_OC4J\bpel\GETTING_STARTED.html.

The only exceptions to be noted are as follows:

  • If the BPEL Process contains any Decision Service applications, UI applications, or Work Flow applications, then these applications will not be automatically deployed in JBoss by the ant script.

  • The corresponding EAR/WAR files is custom built for JBoss platform but need to be manually deployed on the target server.

Note:

Refer to Auto Loan Demo for more details.

3.4.2 From JDeveloper

You can also deploy J2EE applications from JDeveloper. This section contains the following topics:

3.4.2.1 Prerequisite Checks

  1. Download JDeveloper Studio 10.1.3.3 (jdevstudio10133.zip) from

    For Windows - http://www.oracle.com/technology/software/products/jdev/htdocs/soft10133.html.

  2. Copy the bpm-services.jar file from the BPEL_HOME\system\services\lib directory to JDEV_HOME\integration\lib directory.

  3. Copy the orabpel-ant.jar file from the BPEL_HOME\lib directory to the JDEV_HOME\integration\lib directory.

  4. Ensure that the following properties are set in in BPEL_HOME\bpel\utilities\ant-orabpel.properties file: Ensure that bpelPlatform is set to jboss_3 in the BPEL_HOME\bpel\system\config\collaxa-config.xml file.

    • platform to jboss_3

    • admin.user to valid user in JBoss realm

    • admin.password to the password of the above user

    • jndi.url to jnp://localhost:9099

    • jndi.InitialContextFactory to org.jnp.interfaces.NamingContextFactory

  5. In JDeveloper, create an application server connection of the Standalone OC4J 10.1.3 type.

  6. In JDeveloper, create an Integration Server connection to localhost:9700.

3.4.2.2 Steps to Deploy Using JDeveloper

Follow these instructions to deploy BPELPM from the developer prompt using JDeveloper:

  1. From JDeveloper, right-click and deploy the BPEL application into the required domain.

    Description of deployment.gif follows
    Description of the illustration deployment.gif

The only exceptions to be noted are as follows:

  • If the BPEL Process contains any Decision Service applications, UI applications, or Work Flow applications, then these applications will not be automatically deployed in JBoss by JDeveloper.

  • The corresponding EAR/WAR files is custom built for JBoss platform but need to be manually deployed on the target server oracleBPELServer in JBoss Application Server.

Note:

Refer to Auto Loan Demo for more details.

3.5 Additional Configuration Steps of the JBoss Application Server

The configuration steps mentioned in this section are optional and you can perform these only if there is a need:

3.5.1 Using LDAP

This section describes the following steps to configure LDAP in JBoss and to enable LDAP authentication for oracleBPELServer :

  1. Navigate to login-config.xml under JBOSS_HOME\server\oracleBPELServer\conf.

  2. Comment out the "UsersRolesLoginModule" for application-policy "BPELAuthentication".

  3. Uncomment the "LdapLoginModule" (by default the "LdapLoginModule" is commented)

  4. Save the changes.

  5. Restart oracleBPELServer.

The above step disbales the default file-based authentication and enables external LDAP authentication.

Note:

The LdapLoginModule contains default values. Ensure to change them to customer specific environment values.

3.5.2 Using High Availability Setup

This section describes the High Availability (HA) support available for BPELPM 10.1.3.3 on JBoss. This section contains the following topics:

3.5.2.1 Prerequisite Checks

Ensure that HA setup of BPELPM is configured on two nodes on two machines. Let's assume the hostnames of the two nodes as hostname01 and hostname02. Also, the load balancing URL as http:\\<loadbalancer>:9800.

3.5.2.2 Steps to Configure HA for BPELPM

Follow these instructions to configure HA for BPELPM on JBoss:

  1. Configure BPELPM on JBoss on hostname01 and hostname02 separately.

    Note:

    • To configure BPELPM on JBoss on a hostname, refer to "Installation and Configuration".

    • While configuring ensure that DB_URL propertypoints to the same database in orabpel_10133_jboss\bpelDomain.properties for both the nodes.

  2. Install any load balancing software on one of the hosts (hostname01 or hostname02) or some other host, and point http://hostname01:9700 and http://hostname02:9700 using the common load balancing URL (http://<loadbalancer>:9800).

  3. Modify the BPEL_HOME\bpel\system\config\collaxa-config.xml on both hostname01 and hostname02.

    • Update soapCallbackUrl property in the collaxa-config.xml file to http://<loadbalancer>:9800 so that the soapCallbackUrl property points to the load balancer URL.

  4. Start oracleBPELServer on both the hostname01 and hostname02 hosts.

  5. Log in to the BPEL Process Manager Console at http://<loadbalancer>:9800/BPELConsole.

3.6 Postinstallation Verification Tasks

This section describes the postinstallation verification tasks to be performed, and it contains the following topics:

3.6.1 Verifying Oracle BPEL Process Manager Console

Perform the following steps to check if the Oracle BPEL Process Manager Console has started:

  1. Navigate to http://localhost:9700/BPELConsole (Or to the location where the software is installed, for example, http://<machine-name>:9700/BPELConsole/. The Oracle BPEL Process Manager Console window is displayed.

    Description of console.gif follows
    Description of the illustration console.gif

  2. Log in using the user-id as configured in the security settings step in "Using LDAP".

    Description of index.gif follows
    Description of the illustration index.gif

3.6.2 Verifying the SelectAllByTitle Sample for the Database Adapter

  1. Log in to the database and start SQL*Plus.

  2. Run the setup.sql script:

    SQL> @Oracle_Home/samples/tutorials/122.DBAdapter/sql/setup.sql;
    

    This script creates and populates the movies table in the database.

  3. Point the database adapter to your database in the JBoss Console under Deployments, DB Adapter, Configuration, Outbound Connection Pools, eis/DB/BPELSamples, Properties.

    Note:

    Refer to Section 3.6.3, "Running Adapter Samples" for more information.
  4. Select Start, All Programs, Oracle - Oracle_Home, Oracle BPEL Process Manager, Developer Prompt.

  5. Change to the following directory:

    tutorials\122.DBAdapter\SelectAllByTitle
    
  6. Run the following command:

    ant
    

    This compiles and deploys all projects dependent on this tutorial. Projects are deployed into BPEL_HOME\bpel\domains\domain_name\deploy.

  7. Select Start, All Programs, Oracle - Oracle_Home, Oracle BPEL Process Manager, BPEL Console.

  8. Click SelectAllByTitle in the Deployed BPEL Processes list.

  9. Enter the movie title on the Initiate page.

  10. Click Post XML Message.

  11. View the results and inspect the instance.

3.6.3 Running Adapter Samples

Ensure that the outbound connection pool properties shown in Table 3-2 are modified.

3.6.3.1 Configuring Outbound Connection Pool for Adapters in JBoss Application Server

You should create the required outbound connection pools that are used by BPEL Process Partnerlinks before deploying BPEL Processes using Adapters. Perform the following steps to create the required outbound connection pools:

  1. Log in to http://localhost:8001/console, using jboss as the username and password.

  2. Select Deployments, <adapter_name>, Configuration, and Outbound Connection Pools. The Outbound Connection Pool Configuration Table is dispalyed.

  3. Click Lock & Edit.

  4. Click New. The Create a New Outbound Connection page is displayed.

  5. Select the outbound connection displayed in the Outbound Connection Group.

  6. Click Next. The JNDI Name for Outbound Connection Instance page is displayed.

  7. Enter the required JNDI name as referenced by the partnerlink WSDL of the BPEL process under jca:address location.

  8. Click Finish. The Save Deployment Plan Assistant page is displayed.

  9. Select a deployment plan location in the Location field, and click Finish. The Settings for <adapter_name> page is displayed.

  10. Return to the Outbound Connection Pools page and select the outbound connection pool that you created under the Groups and Instances column. The Outbound Connection Properties page is displayed.

  11. Click the respective property value column to update the properties.

  12. Click Save.

  13. Click the Activate Changes button to activate the changes you have made.

Table 3-2 Outbound Connection Pool Properties

Adapter Type Properties

Database

  • driverClassName

  • connectionString

FTP

  • host

  • port

Note: A new authentication alias must be created for connecting to the FTP server.

Applications

  • connectionString

  • userName

  • password

AQ

  • connectionString

  • userName

  • password

JMS

  • connectionFactoryLocation

  • isTopic

  • isTransacted

Note: The istopic property must be set to false for queues. The isTransacted property must be set to false for the JMS samples to run.

MQ

  • channelName

  • portNumber

  • queueManagerName

  • hostName


3.6.4 Deploying Samples Using Ant

Ensure that admin.user and admin.password in BPEL_HOME\bpel\utilities\ant-orabpel.properties are updated with the credentials of a valid user from the authentication store setup for authentication.Samples can be deployed from the developer prompt using the ant script following the above step.The samples containing only BPEL processes can be fully deployed using the ant script.Samples containing additional components such as Decision Service applications, workflow forms, and UI applications need to be deployed in the following manner.

  1. Use the ant script to deploy the BPEL process of the sample.

  2. For each Decision Service application, manually edit the jsps and the decisionservice.xml file to replace the variables for domain, host the port as required. Generate the war or ear file, and deploy into DecisionServer. Start the application.

  3. For each workflow form application, generate the war or ear file, and deploy into oracleBPELServer. Start the Application.

  4. For each UI Application, manually edit the doApply.jsp to replace the variables for domain, host the port as required. Generate the war or ear file, and deploy into oracleBPELServer. Start the application.

3.7 Auto Loan Demo

This appendix describes how to run Auto Loan Demo on BPELPM 10.1.3.3 on JBoss Application Server 4.0.5. It contains these sections:

3.7.1 Prerequisites on JDeveloper Studio 10.1.3.3

The following One-time changes should be performed on JDeveloper:

  1. Replace the bpm-services.jar within JDeveloper at jdev\integration\lib with the updated jar from BPEL_HOME\system\services\lib

  2. Replace the orabpel-ant.jar within JDeveloper at jdev\integration\lib with the updated jar from BPEL_HOME\lib.

  3. Modify the following properties in jdev\integration\bpel\utilities\ant-orabpel.properties file:

    • Platform to jboss_3

    • admin.user to a valid user in JBoss realm

    • admin.password to the password of the above user

    • jndi.url to jnp://<hostname>:<bootstrap_JNP_service_port>

      Note:

      The bootstrap_JNP_service_port to use above can be obtained from jboss-service.xml under JBOSS_HOME/server/oracleBPELServer.

      The value to be looked for: <attribute name="Port">. By default the value of bootstrap_JNP_service_port is 9099.

    • jndi.InitialContextFactory to org.jnp.interfaces.NamingContextFactory

  4. On JDeveloper, create an Application Server connection of type "Standalone OC4J 10.1.3".

  5. On JDeveloper, create an Integration Server connection to "<hostname>:9700".

    Note:

    Ignore errors during test connection regarding ESB at this stage.

3.7.2 Auto Loan Demo Sample

The Auto Loan Flow sample has the following components:

  • BPEL Process: AutoLoanFlow BPEL Process <bpel jar>

  • Decision Service Applications (Business Rules Applications)

    • CreditRatingAgent <ear>

    • LoanAdvisorAgent <ear>

  • UI Application: AutoLoanFlowUI <ear>

  • HWF Tform application: AutoLoanflow LoanApproval <ear>

Since the AutoLoanFlow sample that is bundled with BPELPM standalone is written for OC4J Application Server, it cannot be run as is on JBoss Application Server. Specifically, the Decision Service applications need to be regenerated for Jboss platform, using JDeveloper as the java-wsdl-mapping file needs Jboss-specific modifications.

The next section describes the steps to regenerate the Decision Services Applications in Auto Loan Flow for JBoss.

3.7.3 Modelling Auto Loan Flow Process Using JDeveloper Studio

Perform the following steps to modify the AutoLoanFlow sample for JBoss:

  1. Delete the following file from the filesystem:

    BPEL_HOME\samples\demos\AutoLoadDemo\AutoLoanFlow\bpel\decisionservices.decs

  2. Open the AutoLoanFlow sample from JDeveloper Studio as a JDeveloper project using the following file:

    BPEL_HOME\samples\demos\AutoLoanDemo\AutoLoanFlow\AutoLoanFlow.jpr

  3. Open the AutoLoanFlow.bpel file from the Applications Navigator (found within the AutoLoanFlow project).

  4. From the Services swim lane of AutoLoanFlow.bpel delete the following decision service partnerlinks:

    • CreditRatingAgent

    • LoanAdvisorAgent

  5. Follow the steps II, III, IV and V of "Modelling Auto Loan Broker Process" from BPEL_HOME\samples\demos\AutoLoanDemo\AutoLoanBroker.pdf to recreate the two Decision Service applications.

Modifying Partnerlink Target URLs

Since the Decision Service applications will be deployed on decisionServer and it runs on a port (9701 by default) different from oracleBPELServer, the partnerlink bindings to Decision Service from the BPEL Process should be changed to point to the right location.

  1. Modify the following in BPEL_HOME/samples/demos/AutoLoanDemo/AutoLoanFlow/bpel/bpel.xml file.

    Change the port number to 9701(or the DecisionServer port) in decisionServiceDetails and wsdlRuntimeLocation property values for CreditRatingAgentPL and LoanAdvisorAgentPL bindings.

3.7.4 Known Issues on non-Oracle Platforms

The AutoLoanFlow BPEL process has two Decision Service applications as partnerlinks (CreditRatingAgent and LoanAdvisorAgent). By default, the context-root generated for both these J2EE applications are same with the value - /rules/${domain_id}/${process_id}/${process_revision}

The ${} attributes are replaced by actual values during the build and deploy of the Auto Loan Flow. However, as the context-root is not unique for these two applications, these cannot be deployed on JBoss. When the second application is deployed/started on JBoss it would complain that the context-root is already in use.This is an issue on non-Oracle application servers when a BPEL Process references more than one Decision Service partnerlinks generated from JDeveloper Studio. As a workaround, after generating the Decision Service applications on JDeveloper and before doing a build and deploy, perform the following:

  • Modify the AutoLoanFlow\decisionservices\CreditRatingAgent\ear\META-INF\application.xml file.

    Change <context-root>/rules/${domain_id}/${process_id}/${process_revision}</context-root> to <context-root>/rules/${domain_id}/${process_id}/${process_revision}/CreditRatingAgent</context-root>

  • Modify the AutoLoanFlow\decisionservices\CreditRatingAgent\war\WEB-INF\web.xml file.

    Change <url-pattern>CreditRatingAgent</url-pattern> to <url-pattern>/</url-pattern>

  • Finally, build and deploy the Auto Loan Flow using the Integration Server Connection. In the application navigator, right-click the BPEL project and select Deploy.

    This would automatically deploy the BPEL process into BPEL engine running at the Integration Server connection.

The following J2EE applications should be manually deployed into JBoss:

  • CreditRatingAgent.ear

  • LoanAdvisorAgent.ear

  • AutoLoanFlowUI.ear

  • <domain>_AutoLoanFlow_<version>_LoanApproval.ear

3.7.5 Deploying J2EE Applications on JBoss

Perform the following steps to deploy the applications to JBoss:

  1. J2ee Apps can be deployed into Jboss by copying the files into JBOSS_HOME\server\SERVER_NAME\deploy directory.

    In case of AutoLoamDemo, the server to be deployed is decisionServer. JBOSS_HOME\server\decisionServer\deploy directory. After copying, JBoss automatically deploys the applications.

3.7.6 Running the Sample

When the process is deployed, perform the following steps to test the sample:

  1. Open the AutoLoanFlow UI at http://<hostname>:9700/AutoLoanFLowUI.

  2. Click the Initiate New BPEL Loan Flow hyperlink.

  3. Accept the default payload and click Submit Loan Application.

  4. Log in to the worklist at http://<hostname>:9700/integration/worklistapp using jstein/welcome1 as the username and password.

  5. Click the Task title (Loan Approval for Irving Stone).

  6. Examine the task payload, the credit rating for that loan should be 500 with "Medium" risk and a Credit Max Amount of 50000.0.

    The provider for the Loan Offer should be "Premium Bank" with an APR of 4.0

  7. Approve the task.

  8. Verify the AutoLoanFlow instance.