Skip Headers
Oracle® SOA Suite Installation Guide for JBoss Application Server
10g Release 3 (10.1.3.4) for UNIX and Microsoft Windows

Part Number E13972-02
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

1 Installing Oracle SOA Suite with JBoss Application Server

This chapter provides the requirements and procedures for installing Oracle SOA Suite with JBoss Application Server (JBoss).

This chapter contains the following topics:

See Also:

The following documents after completing installation:

1.1 Overview of Oracle SOA Suite on JBoss

You can install and use Oracle SOA Suite with JBoss.

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

Oracle SOA Suite provides a complete set of service infrastructure components for designing, deploying, and managing composite applications. Oracle SOA Suite enables services to be created, managed, and orchestrated into composite applications and business processes. Composites enable you to easily assemble multiple technology components into one SOA composite application. Oracle SOA Suite plugs into heterogeneous IT infrastructures and enables enterprises to incrementally adopt SOA.

Oracle Business Rules (Business Rules) and Oracle Adapters plug into the Service Infrastructure, a normalized transport infrastructure, make up the Enterprise Service Bus (ESB). With the addition of Oracle BPEL Process Manager (BPEL) and Human Workflow service components, the suite forms a complete Business Process Management (BPM) platform.

The following components comprise Oracle SOA Suite:

The installation of Oracle SOA Suite for JBoss consists broadly of the following steps:

1.2 System and Database Requirements

Table 1-1 describes the system requirements for using Oracle SOA Suite with JBoss.

Table 1-1 Oracle SOA Suite System Requirements

Element Requirement

JBoss Application Server

Version 4.2.3

Oracle SOA Suite for OC4J

Oracle SOA Suite for OC4J 10.1.3.4 + MLR#3

Note: Refer to Step 2: Install Oracle SOA Suite Basic 10.1.3.1.0 for OC4J for installing Oracle SOA Suite for OC4J.

Web browsers

Internet Explorer 6.0 or Mozilla Firefox 2.0

Operating systems

Microsoft Windows XP, Microsoft Windows 2003, Red Hat Enterprise Linux release 5.2, and Oracle Enterprise Linux 5.2

Note: See the JBoss Web site for additional details about using these operating systems with the JBoss Application Server.

Dehydration store database

Oracle Database 10g (10.2.0.2) or higher

Note: This certification matrix reflects the Oracle SOA Suite 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.


1.3 Installation and Configuration

This section describes the steps involved in creating the required schema in the database and installing and configuring Oracle SOA Suite for JBoss.

This section contains the following topics:

1.3.1 Step 1: Create the Oracle SOA Suite Schema in the Oracle Database

Note:

These instructions assume that you have installed Oracle Database 10g version 10.2.0.1 and Oracle Database 10g Patch version 10.2.0.2. For all other Database versions, refer to the Oracle Documentation Web site at http://www.oracle.com/technology/documentation/index.html

To create the Oracle SOA Suite schema in the Oracle Database:

  1. Navigate to the Disk1\install\soa_schemas\irca folder in the Oracle SOA Suite 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.bat on Windows and ./irca.sh in Linux.

    This runs the irca script to create the schemas required for BPEL, ESB, and OWSM.

  4. Enter sys password when prompted.

    The SOA schema is loaded into the Oracle Database.

1.3.2 Step 2: Install Oracle SOA Suite Basic 10.1.3.1.0 for OC4J

You can download and install the basic Oracle SOA Suite 10.1.3.1 for OC4J from Oracle SOA Suite 10g Software Downloads Web site at

http://www.oracle.com/technology/software/tech/soa/index.html

You must install Oracle SOA Suite into its own directory outside of JBoss. JBoss installation will refer to binaries and property files from this installation. This external installation must be there permanently, it is 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 installation.

Note:

  • In this step, you are required to install only the basic installation of Oracle SOA Suite 10.1.3.1, and not the advanced.

  • These instructions assume that you have obtained Oracle Database 10g version 10.2.0.1 and Oracle Database 10g Patch version 10.2.0.2. For all other Database versions, refer to the Oracle Documentation Web site at

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

1.3.3 Step 3: Apply SOA Suite Patchset 10.1.3.4

You must download the SOA Suite patchset 10.1.3.4 from OracleMetaLink and then apply the patch number - 7272722 Oracle Fusion Middleware Family: Patchset 10.1.3.4 PATCHSET UPLOAD. Perform the following steps:

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

  2. Follow the instructions in the patchset to install the patchset.

    Caution:

    You should not start/restart the Oracle SOA Suite instance of OC4J server after applying the patch.
  3. Shutdown the SOA Suite Post patch upgrade as follows:

    WARNING:

    Do not start Oracle SOA Server from the Windows Start Menu or by running the SOA_Home\opmn\bin\opmnctl -startall script. These actions are not supported.

    Caution:

    You should not start/restart the Oracle SOA Suite instance of OC4J server after applying the patch.
    For... Run...
    Windows XP SOA_HOME\opmn\bin> opmnctl stopall
    Linux SOA_HOME\opmn\bin> ./opmnctl stopall

1.3.4 Step 4: Upgrade SOA Schema to 10.1.3.4

In this step, you will apply the SOA Suite Patchset 10.1.3.4 and also upgrade ORABPEL and ORAESB schemas to 10.1.3.4, as mentioned in the steps below:

  1. Execute the following script to upgrade the ORABPEL schema:

    Disk1\install\soa_schema_upgrade\bpel\scripts\upgrade_10133_10134_oracle.sql

  2. Execute the following script to upgrade the ORAESB schema:

    Disk1\install\soa_schema_upgrade\esb\sql\oracle\upgrade_10131_10134_oracle.sql

    Note:

    Although the ORAESB script states that we are upgrading from 10.1.3.3 to 10.1.3.4, it works fine for upgrading from 10.1.3.1.

1.3.5 Step 5: Apply MLR#3 on Oracle SOA Suite 10.1.3.4

Note:

The procedure to apply MLR#3 is same as on OC4J (no Hot Plug post patch needs to be run).

You need to download the MLR#3 opatch for Bug 7586063 (TRACKING BUG for Cumulative MLR#3 on Top of 10.1.3.4) from OracleMetaLink and then apply the patchset on Oracle SOA Suite 10.1.3.4.

  1. Download the OPatch p7586063_101340_GENERIC.zip file for Bug 7586063.

  2. Follow the instructions given in the Readme.txt file of patch 7586063 and apply the patch on Oracle SOA Suite 10.1.3.4.

  3. Shutdown the SOA Suite post patch upgrade as follows:

    For... Run...
    Windows XP SOA_HOME\opmn\bin> opmnctl stopall
    Linux SOA_HOME\opmn\bin> ./opmnctl stopall

1.3.6 Step 6: Upgrade SOA Schemas to MLR#3 Level

To upgrade SOA Schemas to MLR#3 level, upgrade both ORABPEL and ORAESB schemas from the following locations in the SOA_HOME directory:

  • bpel/system/database/scripts/upgrade_10134_10134mlr_oracle.sql

  • integration/esb/sql/oracle/upgrade_10134_10134MLR.sql

1.3.7 Step 7: Install JBoss and Configure Oracle SOA Suite for JBoss

  1. Install JBoss Application Server 4.2.3 GA.

    Note:

    If installing on Linux, then change the permissions using the command chmod a+x jboss-4.2.3.GA.
  2. Download the Oracle SOA Suite 10.1.3.4 JBoss (JBOSS_SOA10134.zip) from the Application Server 10g Release 3 (10.1.3.x) Downloads page at http://www.oracle.com/technology/software/products/ias/htdocs/101310.html and unzip to your local machine. The contents of this zip file are extracted to the JBOSS_SOA10134 folder with the following sub-folders:

    • bin

    • cfg

    • libraries

    • packaging

    • soapps

  3. Modify the following mandatory installation properties in the JBOSS_SOA10134\cfg\SOAJboss.properties file:

    Note:

    • These instructions assume that you have obtained JBoss version 4.2.3.

    • The directory to which you download the Oracle SOA Suite should be the same host on which JBoss is installed.

    • Unzip the JBOSS_SOA10134 folder as a non-root user (same user as used to install Oracle SOA Suite 10.1.3.1 for OC4J). For example, Oracle.

    • If installing on Linux, then change the permissions to the JBOSS_SOA10134 folder using the chmod -R 755 JBOSS_SOA10134 command.

    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. Use forward slash (“/”) as path separator when entering the file paths in SOAJboss.properties.

    However, the proxy settings properties, such as PROXY_HOST, PROXY_PORT, and NON_PROXY_HOST are non-mandatory.

    Property Description
    JBOSS_HOME The directory path in which JBoss is installed.

    For example, JBOSS_HOME=C:/jboss-4.2.3.GA

    SOA_HOME The directory path in which Oracle SOA Suite is installed.

    For example, SOA_HOME=C:/product/10.1.3.1/OracleSOA_JBoss

    DRIVER_TYPE The datasource class that the installable utilizes to create datasources for the OracleSOAServer managed server.

    For example, DRIVER_TYPE=jdbc:oracle:thin

    HOSTNAME This is the name of the system in which the database is installed.For example, HOSTNAME=localhost
    PORTNUMBER The port to which the database is listening.For example, PORTNUMBER=1521
    SID The name of the databse instance.For example, SID=ORCL
    HTTP_PORT_SOASERVER The port where OracleSOAServer is configured to run.For example, HTTP_PORT_SOASERVER=9700
    RMI_PORT_SOASERVER The default RMI port for OracleSOAServer.For example, RMI_PORT_SOASERVER=9099
    AQ.JMS.ENABLED If the value of the property is true, then AQ is enabled; if the value of the property is false, then JBoss JMS is enabled.

    For example, AQ.JMS.ENABLED=true

    DB_BPEL_PASSWORD The password for ORABPEL schema in the database.

    For example DB_BPEL_PASSWORD=orabpel

    DB_OWSM_PASSWORD The password for ORAWSM schema in the database.For example, OWSM.JAASAUTHPASSWD=orawsm
    DB_ESB_PASSWORD The password for ORAESB schema in the database.For example, ESB.JAASAUTHPASSWD=oraesb
    PROXYSET Indicates whether proxy settings need to be configured for the server. The valid values are true or false.

    For example, PROXYSET=true


  4. If you want to use the following optional properties, remove the <comment> tag from the properties, and then specify values.

    Note:

    Optional properties are commented by the # tag, by default. If you remove the # tag for these properties, then they cannot contain blank values. Change the default values for the four properties. Failure to follow this requirement results in errors during installation.
    Property Description
    PROXY_HOST The host name of the proxy server. Set this property, only if PROXYSET=true.

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

    PROXY_PORT The port where the proxy server is running. Set this property, only if PROXYSET=true.

    For example, PROXY_PORT=80

    NON_PROXY_HOST The list of non-proxy hosts that are divided by a | symbol. Set this property, only if PROXYSET=true.For example, NON_PROXY_HOST=*.oracle.com|*.oraclecorp.com|localhost|

  5. Run the following script from the JBOSS_SOA10134\bin folder at the operating system command prompt:

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

    Note:

    The setup.sh script would not have execute privileges. So, run chmod +x setup.sh.

    This script creates a folder called OracleSOAServer in the JBOSS_HOME\server\ directory. This configures the required applications, server properties, classpaths, database connections, and adapters for OracleSOAServer to run Oracle SOA Suite 10.1.3.4 + MLR#3.

    Note:

    While running the setup.bat or setup.sh file, set the environment variable JAVA_HOME to the SOA_HOME\jdk folder. For example, SOA_HOME\jdk in Microsoft Windows or /SOA_HOME/jdk in Linux. If JAVA_HOME path does not exist, then setup file throws a message asking to set the JAVA_HOME before running the setup file.

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

  6. Start JBoss as follows:

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

    Note:

    Do not start OracleSOAServer from the Windows Start Menu or by running the SOA_Home\opmn\bin\opmnctl -startall script. These actions are not supported.
  7. (Optional). Commands to stop the OracleSOAServer is as follows:

    Note:

    Use these commands to stop OracleSOAServer.

    Stop the OracleSOAServer as follows:

    For... Run...
    Windows XP stopServer.bat -s jnp://localhost:${RMI_PORT_SOASERVER}
    Linux stopServer.sh -s jnp://localhost:${RMI_PORT_SOASERVER}

1.4 Design-Time Deployment Support Oracle SOA Suite 10.1.3.4 on JBoss

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

1.4.1 From the BPELPM Developer Prompt Using Ant

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

1.4.1.1 Prerequisite Checks

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

  2. Ensure that the following properties are set in SOA_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 mentioned user

    • jndi.url to jnp://${HOSTNAME}:${RMI_PORT_SOASERVER}

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

    Note:

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

1.4.1.2 Steps to Deploy Using the BPELPM Prompt

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

  1. Open a BPEL PM Developer prompt.

  2. Run ant.sh/bat from the SOA_HOME\ant\bin directory of the BPEL application.

    Note:

    For more information, refer to C:\product\10.1.3.1\OracleSOA_JBoss\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 are custom built for the JBoss platform but must be manually deployed on the target server OracleSOAServer in JBoss.

1.4.2 From JDeveloper

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

1.4.2.1 Prerequisite Checks

  1. Download JDeveloper Studio 10.1.3.4 (jdevstudio10134.zip) from Oracle JDeveloper (10.1.3.3) (Build 4157) Web site at

    http://www.oracle.com/technology/software/products/jdev/htdocs/soft10134.html

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

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

  4. Ensure that the following properties are set in the SOA_HOME\bpel\utilities\ant-orabpel.properties file. Ensure that bpelPlatform is set to jboss_3 in the SOA_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 mentioned user

    • jndi.url to jnp://${HOSTNAME}:${RMI_PORT_SOASERVER}¦

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

    Note:

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

Creating Connections to Oracle SOA Server

Follow the steps below to create an application server connection and an integration server connection:

  1. Create an application server connection of the Standalone OC4J 10.1.3 type.

    • Choose OC4J standalone as server type as there is no plugin available for JBoss

    • Ignore errors when testing this connection. This is due to OPMN absent on JBoss

  2. Create an Integration Server connection to hostname:<HTTP_PORT_SOASERVER>. The default port is as mentioned in the SOAJboss.properties file.

    • Choose the above-created Application Server connection

    • BPEL and ESB should pass when this connection is tested

1.4.2.2 Steps to Deploy Using JDeveloper

Follow these instructions to deploy BPEL PM 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

  2. To deploy an ESB Services project, right-click and select Register with ESB to the required Integration Server connection.

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 are custom built for JBoss but must be manually deployed on the target server OracleSOAServer in JBoss.

1.5 Additional Configuration Steps of JBoss

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

1.5.1 Using LDAP

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

  1. Navigate to login-config.xml in the JBOSS_HOME\server\OracleSOAServer\conf directory.

  2. Precede the "UsersRolesLoginModule" text with a comment character for application-policy BPELAuthentication.

  3. Remove the comment character for the "LdapLoginModule" text (By default, the "LdapLoginModule" text is commented.)

  4. Save the changes.

  5. Restart OracleSOAServer.

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

Note:

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

1.5.2 Using High Availability Setup

This section describes the High Availability (HA) support available for Oracle SOA Suite 10.1.3.4 on JBoss. This section contains the following topics:

1.5.2.1 Prerequisite Checks

Ensure that HA setup of Oracle SOA Suite is configured on two machines. Let us assume the host names of the two machines as hostname01 and hostname02.

1.5.2.2 Steps to Configure HA for Oracle SOA Suite

Follow these instructions to configure HA for Oracle SOA Suite on JBoss:

  1. Configure Oracle SOA Suite on JBoss on hostname01 and hostname02 separately.

    Note:

    • To configure Oracle SOA Suite on JBoss on a host name, refer to "Installation and Configuration".

    • While configuring ensure that the data source host info property points to the same database in SOAJboss.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 SOA_HOME\bpel\system\config\collaxa-config.xml file 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.

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

  4. Undeploy the ESB design-time application, x_esb-dt.ear, in any one of these hosts, either hostname01 or hostname02, before running OracleSOAServer.

    • This application should not be running on both the hosts. Failure to undeploy this ESB design-time application (x_esb-dt.ear) might result in producing unwanted errors.

  5. Modify the DT_OC4J_HOST and DT_OC4J_PORT parameter in ESB_PARAMETER (oraesb) table with hostName/port of the machine where ESB Design time application x_esb-dt.ear is deployed.

  6. Start OracleSOAServer on both the hostname01 and hostname02 hosts.

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

  8. Log in to the ESB Console at http://<hostname01>:9700/esb (assuming that you have retained ESB design-time (x_esb-dt.ear) application in the hostname01 machine).

  9. Log in to OWSM at

    http://<loadbalancer>:9800/ccore/index.jsp

1.5.3 Using ESB System Configurations

Ensure that the system information for the ESB services deployed is as follows:

  • Virtual Host: The hostname of the ESB design-time instance.

  • Port: The port number of ESB design-time instance.

  • Topic Location: ESB_JAVA_DEFERRED

    Note:

    The value of the Connection Factory Location parameter does not matter for ESB on JBoss application server because ESB, by default, uses AQ messaging and AQ JMS API to connect to the AQ messaging topics.

1.5.4 Using MQ and Tibco Client Classes

The Client jars for WebSphere MQ and Tibco messaging providers should be copied to SOA_HOME\lib\MQ directory. These are required to connect to these messaging providers from JMS or MQ adapters.

1.6 Postinstallation Verification Tasks

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

1.6.1 Verifying BPEL, ESB, OWSM Consoles

Perform the following steps to check if the BPEL, ESB, OWSM Consoles have started:

  1. Navigate to http://localhost:<HTTP_PORT_SOASERVER>/BPEL_Console (Or to the location where the software is installed, for example, http://<machine-name>:<HTTP_PORT_SOASERVER>/BPEL_Console. The BPEL Console window is displayed as shown in Figure 1-1.

    Navigate to the http://localhost:<HTTP_PORT_SOASERVER>/esb. The ESB Console window is displayed, as shown in Figure 1-2.

    Navigate to the http://localhost:<HTTP_PORT_SOASERVER>/ccore/index.jsp. The OWSM Console window is displayed, as shown in Figure 1-3.

    Note:

    The HTTP_PORT_SOASERVER parameter is defined in the SOAJboss.properties file.

    Figure 1-1 BPEL Console Window

    Description of Figure 1-1 follows
    Description of "Figure 1-1 BPEL Console Window"

    Figure 1-2 ESB Console Window

    Description of Figure 1-2 follows
    Description of "Figure 1-2 ESB Console Window"

    Figure 1-3 OWSM Console Window

    Description of Figure 1-3 follows
    Description of "Figure 1-3 OWSM Console Window"

  2. Log in to the BPEL Console using the username and password as per the application authentication policy. The Oracle Enterprise Manager BPEL Console page is displayed.

    Log in to the ESB Console using the username and password, as per the application authentication policy, the Oracle Enterprise Manager ESB Console page is displayed.

    Log in to the OWSM Console using the username and password, as per the application authentication policy, the Oracle Enterprise Manager Web Services Manager Console page is displayed.

1.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 by editing the DbAdapter-ds.xml file in the JBOSS_HOME\server\OracleSOAServer\deploy\ directory and modify the <tx-connection-factory> jndi-name property for Outbound Connection Factories to eis/DB/BPELSamples.

    Note:

    Refer to Section, "Running Adapter Samples" for more information.
  4. Select Start, All Programs, Oracle - Oracle_Home, Oracle SOA Suite, 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 Oracle_Home\bpel\domains\domain_name\deploy.

  7. Select Start, All Programs, Oracle - Oracle_Home, Oracle SOA Suite, BPEL Console.

  8. Click SelectAllByTitle in the Deployed BPEL Processes list.

  9. Refer to the MOVIES table, and enter the movie title on the Initiate page. For example, 'The Aviator'.

  10. Click Post XML Message.

  11. View the results and inspect the instance.

1.6.3 Running Adapter Samples

This section contains the following topics:

1.6.3.1 Configuring Outbound Connection Pool for Adapters in JBoss

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

  1. Navigate to the JBOSS_HOME\server\OracleSOAServer\deploy directory.

  2. Edit the *-ds.xml files for creating new connection factories as required by the resource adapters. For example, MQAdapter-ds.xml for MQ Adapter.

  3. Ensure that the connection factory properties, as shown in Table 1-2, are modified for the required resource adapters.

    Table 1-2 Connection Factory 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


1.6.4 Deploying Samples Using Ant

Ensure that admin.user and admin.password in SOA_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 must 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, deploy the generated ear file into OracleSOAServer.

  3. For each workflow form application, deploy the generated the worflow form war into OracleSOAServer.

  4. For each UI application, generate the war or ear file, and deploy into OracleSOAServer.

1.7 Limitations and Known Issues

This section describes the limitations, known issues, and troubleshooting tips for Oracle SOA Suite 10.1.3.4 on JBoss version.

1.7.1 Limitations

Note the following limitations:

  • JBoss and Oracle SOA Suite 10.1.3.4 should be installed as the same user on Linux and the user should not be a root user.

    Note:

    When deploying BPEL processes into BPEL Server on JBoss, you only must specify the following two properties in build property files:
    • http.hostname = <SOA_hostname>

    • http.port = 9700

    These properties can be either defined in the build.properties file in your project or in the ant-orabpel.properties file. You can also create a customized build property file, which will overwrite the other two build propery files when properties get loaded by ant.

    Once properties are loaded by ant, the order in which the properties are loaded are as follows:

    1. Customized build property file

      To use this file when deploying a BPEL project, use the following command:

      ant -propertyfile <name>, where <name> is the build property filename created by users.
      
    2. build.properties file in your BPEL project

    3. If BPEL_HOME environment variable is specified, then BPEL_HOME/utilities/ant-orabpel.properties will be used, otherwise, JDEV_HOME/integration/bpel/utilities/ant-orabpel.properties is loaded by ant, where JDEV_HOME is the JDeveloper installation directory.

    It is recommended using build.properties file or customized build property files when deploying BPEL processes using ant.

1.7.2 Known Issues

Note the following known issues:

JMS Adapter

  • JMS Adapter throws the following NullPointerException during initialization on non-Oracle platforms:

    JmsConnectionFactory: Unable to set connectionparameters for OracleConnectionManager 
    java.lang.NullPointerException 
    at oracle.tip.adapter.jms.JmsConnectionFactory.<init>(JmsConnectionFactory.java:91)
    at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnectionFactory(JmsManagedConnectionFactory.java:81) 
    at org.jboss.resource.connectionmanager.ConnectionFactoryBindingService.createConnectionFactory(ConnectionFactoryBindingService.java:128) 
    at org.jboss.resource.connectionmanager.ConnectionFactoryBindingService.startService(ConnectionFactoryBindingService.java:65) 
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) 
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
    at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    

    This is a benign error and does not stop the JMS connection factory from initializing.

Decision Service Applications

Make the following modifications in the Decision Service Applications generated using the build scripts to enable them to deploy and function properly on JBoss Application Server 4.2.3. These modifications are necessary so that the marhal/unmarshal of decision service web service results are handled as expected by JBossXBSerializer.

Modify the BPEL process file (.bpel), which calls the Decision Service partnerlinks, and update the xpath query for the resultList element as shown below:

<copy> <from variable="dsOut" part="payload" query=
"/ns2:assertExecuteWatchStatelessDecision/ns2:childElements/ns2:resultList/ns3:
 rating"/> <to variable="creditrating_Rating_o"/> </copy>

Intermittent ESB Deployment Failure

The deployment of ESB Services can fail occasionally with the following error:

ERROR [STDERR] SEVERE: Failed to process control event for "Service" with GUID "<GUID>". Reason : oracle.tip.esb.server.common.cache.CacheException: Could not load RuntimeService into the cache for service GUID "<GUID>"! Reason : Could not read Service object from repository for service "GUID : <GUID> " 

This occurs due to latency between ESB Runtime getting notified for deployment and ESB Design time committing the metadata in the database. The workaround is to redeploy the ESB Service, without undeploying it whenever this error occurs.

Human Workflow API

If you use the SOAP_CLIENT parameter for Human Workflow API, then the following error occurs during TaskQueryService authentication:

org.jboss.xb.binding.JBossXBRuntimeException: Failed to find read method or field for property 'credential' in class org.jboss.ws.core.soap.SOAPBodyElementDoc
0

The REMOTE_CLIENT parameter should be used to connect to Human Workflow API for Oracle SOA Suite on JBoss.