TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide

Software Release 7.0 February 2017

Two-Second Advantage® 2

Important Information

SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE. USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE) OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BE BOUND BY THE SAME. This document contains confidential information that is subject to U.S. and international copyright laws and treaties. No part of this document may be reproduced in any form without the written authorization of TIBCO Software Inc. TIBCO, Two-Second Advantage, TIBCO ActiveMatrix BusinessWorks, TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo, TIBCO Business Studio, and TIBCO Enterprise Administrator are either registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other countries. Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform Enterprise Edition (J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks of in the U.S. and other countries. All other product and company names and marks mentioned in this document are the property of their respective owners and are mentioned for identification purposes only. THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWARE VERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM. THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME. THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE, INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES. Copyright © 1998-2017 TIBCO Software Inc. ALL RIGHTS RESERVED. TIBCO Software Inc. Confidential Information

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 3

Contents

Figures ...... 4 TIBCO Documentation and Support Services ...... 5 Product Overview ...... 6 Preparing Oracle Tuxedo ...... 7 Set Environment Variables ...... 7 Edit the ubbconfig File ...... 8 Create Oracle Tuxedo Configuration Files ...... 8 Create Executable Files ...... 9 Boot Oracle Tuxedo Services ...... 10 Shutdown Oracle Tuxedo Services ...... 10 Getting Started ...... 12 Creating a Project ...... 12 Creating and Utilizing an Oracle Tuxedo Schema Shared Resource ...... 13 Creating and Configuring an Oracle Tuxedo Connection Shared Resource ...... 14 Configuring a Process ...... 15 Testing a Process ...... 16 Deploying an Application ...... 16 TIBCO Business Studio Overview ...... 17 Oracle Tuxedo Schema Shared Resource ...... 18 Oracle Tuxedo Connection Shared Resource ...... 21 Oracle Tuxedo Palette ...... 22 Invoke Oracle Tuxedo Service ...... 22 Job Tuning ...... 24 Troubleshooting ...... 25 Managing Logs ...... 26 Log Levels ...... 26 Setting Up Log Levels ...... 26 Exporting Logs to a File ...... 27 Error Codes ...... 28

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 4

Figures

Header File ...... 20 Generated XSD File ...... 20

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 5

TIBCO Documentation and Support Services

Documentation for this and other TIBCO products is available on the TIBCO Documentation site. This site is updated more frequently than any documentation that might be included with the product. To ensure that you are accessing the latest available help topics, visit: https://docs.tibco.com

Product-Specific Documentation

Documentation for TIBCO products is not bundled with the software. Instead, it is available on the TIBCO Documentation site at https://docs.tibco.com/products/tibco-activematrix-businessworks-plug- in-for-tuxedo. To directly access documentation for this product, double-click the following file: TIBCO_HOME/release_notes/TIB_ bwplugintuxedo_version_number_docinfo.html where TIBCO_HOME is the top-level directory in which TIBCO products are installed. On Windows, the default TIBCO_HOME is :\Program Files\tibco. On systems, the default TIBCO_HOME is /opt/tibco. The following documents for this product can be found on the TIBCO Documentation site:

● TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo User's Guide

● TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo Installation

● TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo Release Notes

How to Contact TIBCO Support

For comments or problems with this manual or the software it addresses, contact TIBCO Support:

● For an overview of TIBCO Support, and information about getting started with TIBCO Support, visit this site: http://www.tibco.com/services/support

● If you already have a valid maintenance or support contract, visit this site: https://support.tibco.com Entry to this site requires a user name and password. If you do not have a user name, you can request one.

How to Join TIBCO Community

TIBCO Community is an online destination for TIBCO customers, partners, and resident experts. It is a place to share and access the collective experience of the TIBCO community. TIBCO Community offers forums, blogs, and access to a variety of resources. To register, go to the following web address: https://community.tibco.com

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 6

Product Overview

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo serves as a gateway to Oracle Tuxedo applications from TIBCO ActiveMatrix BusinessWorks™ applications. With the plug-in, you can invoke Oracle Tuxedo services. TIBCO ActiveMatrix BusinessWorks is a leading integration platform that can integrate a wide variety of technologies and systems within enterprise and on cloud. TIBCO ActiveMatrix BusinessWorks includes an Eclipse-based graphical user interface (GUI) provided by TIBCO Business Studio™ for design, testing, and deployment. If you are not familiar with TIBCO ActiveMatrix BusinessWorks, see the TIBCO ActiveMatrix BusinessWorks documentation for more details. TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo extends TIBCO ActiveMatrix BusinessWorks, and adds an Oracle Tuxedo Connection shared resource, an Oracle Tuxedo Schema shared resource, and an Orace Tuxedo Palette to TIBCO Business Studio:

● Oracle Tuxedo Connection Use the Oracle Tuxedo Connection shared resource to establish inbound connectivity to the Oracle Tuxedo system.

● Oracle Tuxedo Schema Use the Oracle Tuxedo Schema shared resource for generating XSD schema based on input and output headers provided by the Oracle Tuxedo system.

● Oracle Tuxedo Palette

— Invoke Oracle Tuxedo Service: Use the Invoke Oracle Tuxedo Service activity to invoke a service in Oracle Tuxedo as a synchronous request-response via Application to Transaction Monitor Interface (ATMI).

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 7

Preparing Oracle Tuxedo

Before configuring the plug-in, you must complete the tasks in this section to allow the plug-in to access Oracle Tuxedo services. Set the required environment variables, boot the Oracle Tuxedo services and ensure that they are running successfully. This section explains how to prepare Oracle Tuxedo services to interact with the plug-in. You need to perform the following tasks to prepare Tuxedo:

● Set Environment Variables

● Edit the ubbconfig File

● Create Oracle Tuxedo Configuration Files

● Create Executable Files

● Boot Oracle Tuxedo Services

● Shutdown Oracle Tuxedo Services Set Environment Variables An Oracle Tuxedo account is required to connect to the Oracle Tuxedo system to communicate with the plug-in. Set the following environment variables:

● Oracle Tuxedo Server Settings:

Set the following environment variables in the BWAppnode TRA file configuration on the machine where Tuxedo is installed and where the services are to be booted.

Name Description

TUXDIR Tuxedo installation directory. For example, TUXDIR=/home/tuxedo/ OraHome103/tuxedo10gR3.

APPDIR Directory where the Tuxedo service executable files are located. For example, APPDIR=/home/tuxedo/TIBCO_HOME/bw/palettes/tux/7.0/ examples.

PATH The environment variable used to find executables. For example, %TUXDIR/ bin:$PATH.

LD_LIBRARY_PATH The environment variable used to find shared libraries. For example, $LD_LIBRARY_PATH:$TUXDIR/lib.

NLSPATH The environment variable that specifies directories to search for message catalogs. For example, $TUXDIR/locale/C.

● Oracle Tuxedo Plug-in Settings in BW Studio: Set the following environment variables on the Environment tab of BWApplication of BusinessWorks Application.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 8

Name Description

TUXDIR The Tuxedo installation directory. For example, TUXDIR=/home/tuxedo/ OraHome103/tuxedo10gR3.

LD_LIBRARY_PATH The environment variable used to find shared libraries. For example, LD_LIBRARY_PATH=/home/tuxedo/OraHome103/tuxedo10gR3/lib:$ {env_var:FTL_HOME}/lib:${env_var:RV_HOME}/lib/64:$ {env_var:RV_HOME}/lib:${env_var:LD_LIBRARY_PATH}.

Edit the ubbconfig File Edit the ubbconfig file to reflect the same values for the environment variables set on the machine with the Oracle Tuxedo client and server installation. The ubbconfig file contains default values as bracketed items. Change the default values as per your requirements. Ensure that the values specified for the environment variables are reflected in the ubbconfig file. The settings to be modified are as follows:

Machines Section

● Change the machine name to the machine name on which the plug-in is installed.

● TUXDIR - Oracle Tuxedo installation directory.

● APPDIR - Directory where the Oracle Tuxedo service executable files are located.

● TUXCONFIG - The name of the Oracle Tuxedo configuration file to be generated along with the location. The value specified cannot exceed 64 characters, so ensure that your directory structure is such that the path and file name together are 64 characters or less.

● ULOGPFX - The location of Application Log File.

● MAXWSCLIENTS - The maximum number of clients that can connect to Oracle Tuxedo. The default is set to 0 (zero). You must set this to 1 or higher in order to boot the Oracle Tuxedo services successfully. The maximum number of clients that you can specify is 32767.

Ensure that MAXWSCLIENTS is set to 1 or higher.

When configuring the appropriate value for MAXWSCLIENTS, you need to consider the number of concurrent jobs requiring a workstation client connection.

Servers Section

● CLOPT (modify the IP address to reflect the value specified for the WSNADDR environment variable). If the client that will connect to this server is to be used as a native client, this is not required to be set.

Refer to Oracle Tuxedo documentation for details on editing the ubbconfig file.

Create Oracle Tuxedo Configuration Files Convert the ubbconfig file into an Oracle Tuxedo configuration file. Once the Oracle Tuxedo configuration file has been generated, it will be placed in the path specified for the TUXCONFIG environment variable.

Procedure

1. Type either of the following at a command prompt:

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 9

● tmloadcf -y ubbconfig file name or,

● tmloadcf ubbconfig file name

(Answer "y" if it prompts you on whether it should proceed) 2. At the command prompt, change the directory to APPDIR and run the following: TIBCO_HOME\plugin\adtuxedo\version_number\examples\EventBased\Em ployee>tmadmin A ">" prompt is displayed as shown in the sample below: TIBCO_HOME\plugin\adtuxedo\version_number\examples\EventBased\Em ployee>tmadmin tmadmin - Copyright (c) 1996-1999 BEA Systems, Inc Portions * Copyright 1986-1997 RSA Data Security, All Rights Reserved. Distributed under license by BEA Systems, Inc. > Tuxedo is a registered trademark. Step 2 needs to be followed if a database is being used. They can be ignored for the examples provided with the plug-in. If the plug-in has to establish multiple connections with the Tuxedo server, you need to modify the default server settings. The following settings control access to your applications: ● MAXACCESSORS

● MAXSERVERS

● MAXWSCLIENTS

● The WSL configuration settings You need to adjust these settings to ensure that the number of allowable client connections is properly configured.

The WSL settings are: WSL SRVGRP=Group SRVID=ID CLOPT="-A -- -n //IP address:Port number -m -M -x < maximum number of clients connected at any one time>"

The -m and -M determine how many WSH processes will be started. If you want to allow more connections, you should increase the -M value. Depending on the number of connections to be increased, you have to accordingly increase the MAXWSCLIENTS value. The -x value is the multiplexing factor. This determines how many connections can be handed by one WSH process.

Create Executable Files To create executables for Tuxedo client and server programs using the buildclient and buildserver utilities, perform the following steps:

Procedure

● Type the following at the command prompt to create the executable in order to generate the binary file for the server program:

● Invoke Oracle Tuxedo Services

buildserver -o server executable file name -f server .c file name -s service name

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 10

Boot Oracle Tuxedo Services Use the following steps to start Oracle Tuxedo services and verify that they are active:

Procedure

1. Type the following command to boot the server: tmboot -y If the above steps are applied to the EMPLOYEE example, the following message displays on the screen indicating that the Oracle Tuxedo services are being successfully booted: Booting all admin and server processes in /home/tuxedo/Downloads/Static/Employee/ tuxconfig INFO: Oracle Tuxedo, Version 10.3.0.0, 64-bit, Patch Level (none)

Booting admin processes ...

exec BBL -A : process id=9574 ... Started.

Booting server processes ...

exec WSL -A -- -n //10.108.80.193:7777 -m 1 -M 10 -x 1 : process id=9576 ... Started. exec server -A : process id=9578 ... Started. 3 processes started. 2. Type the following command to verify that all server and services are active: tmadmin A '>' prompt displays if the configuration is active as shown in the sample below. [tuxedo@localhost Employee]$ tmadmin tmadmin - Copyright (c) 2007-2008 Oracle. Portions * Copyright 1986-1997 RSA Data Security, Inc. All Rights Reserved. Distributed under license by Oracle. Tuxedo is a registered trademark.

> psr Prog Name Queue Name Grp Name ID RqDone Load Done Current Service ------BBL 129630 emple 0 0 0 ( IDLE ) WSL 00001.00002 GROUP1 2 0 0 ( IDLE ) server 00001.00003 GROUP1 3 1 50 ( IDLE )

> psc Service Name Routine Name Prog Name Grp Name ID Machine # Done Status ------EMPINFO EMPINFO server GROUP1 3 emple 1 AVAIL

> q If the configuration is not active, the following message displays: No bulletin board exists Entering boot mode >

Shutdown Oracle Tuxedo Services

Procedure

● Type the following command to shutdown Oracle Tuxedo services: [tuxedo@localhost Employee]$ tmsshutdown -y Shutting down all admin and server processes in /home/tuxedo/Downloads/Static/ Employee/tuxconfig

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 11

hutting down server processes ... Server Id = 3 Group Id = GROUP1 Machine = emple: shutdown succeeded Server Id = 2 Group Id = GROUP1 Machine = emple: shutdown succeeded hutting down admin processes ... Server Id = 0 Group Id = emple Machine = emple: shutdown succeededӠprocesses stopped. tuxedo@localhost Employee]$

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 12

Getting Started

This tutorial is designed for the beginners who want to use TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo in TIBCO Business Studio. All the operations are performed in TIBCO Business Studio. See TIBCO Business Studio Overview to get familiar with TIBCO Business Studio. A basic procedure of using TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo includes:

1. Creating a Project 2. Creating and Utilizing an Oracle Tuxedo Schema Shared Resource 3. Creating and Configuring an Oracle Tuxedo Connection 4. Configuring a Process 5. Testing a Process 6. Deploying an Application

When configuring the shared resources or activities, you might find that some fields inherit the module properties. If you want to specify those fields, you have to specify the corresponding module properties in the Module Properties tab of the Module Properties editor.

Creating a Project The first task using the plug-in is creating a project. After creating a project, you can add resources and processes. An Eclipse project is an application module configured for TIBCO ActiveMatrix BusinessWorks. An application module is the smallest unit of resources that is named, versioned, and packaged as part of an application.

When you import an existing project to the current workspace of TIBCO Business Studio, if you click Select root directory in the Import Projects dialog, you must select the Copy projects into workspace check box.

Procedure

1. To start TIBCO Business Studio run the TIBCO Business Studio executable file located in the TIBCO_HOME/studio/version_number/eclipse directory. 2. In the Workspace Launcher dialog, select a workspace using the Browse button. Alternatively, you can also proceed with the workspace that is selected by default. Click OK. 3. From the menu, click File > New > BusinessWorks Resources to open the BusinessWorks Resource Wizard. 4. In the "Select a wizard" dialog, click BusinessWorks Application Module and click Next to open a New BusinessWorks Application Module wizard. 5. In the Project dialog, configure the project that you want to create: a) In the Project name field, enter a project name. b) By default, the created project is located in the workspace currently in use. If you do not want to use the default location for the project, clear the Use default location check box and click Browse to select a new location. c) Use the default version of the application module, or enter a new version in the Version field. d) Keep the Create Empty Process and Create Application check boxes selected to automatically create an empty process and an application when creating the project.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 13

e) Select the Use Java Configuration check box if you want to create a Java module. A Java module provides Java tooling capabilities. f) Click Finish.

Result

The project with the specified settings is displayed in the Project Explorer view.

Creating and Utilizing an Oracle Tuxedo Schema Shared Resource After creating a project, you can add an Oracle Tuxedo Schema shared resource to generate XSD schemas for Oracle Tuxedo services in the Oracle Tuxedo system.

Prerequisites

The Oracle Tuxedo Schema shared resource is available at the Resources level. Ensure that you have created a project. See Creating a Project for details.

Procedure

1. In the Project Explorer view, expand the created project. 2. Right-click the Resources folder, then click New > Oracle Tuxedo Schema. The Oracle Tuxedo Schema Configuration wizard opens. 3. In the Oracle Tuxedo Schema Configuration dialog, package name, and resource name of the Oracle Tuxedo Schema are provided by default. If you do not want to use the default configurations, change them accordingly and click Finish to create the Oracle Tuxedo Schema shared resource.

In a project, all the Oracle Tuxedo Schema shared resources cannot use the same name, even if the shared resources belong to different packages.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 14

4. Click to locate an Input Header File in your computer. 5. Select the appropriate header file. Click OK.

6. Click to locate an Output Header File in your computer. 7. Select the appropriate header file. Click OK. 8. The Generate XSD Schema button is enabled only when you specify input and output header files in their respective fields. Click the Generate XSD Schema button. A pop-up will appear stating that the XSD schema files have been generated. 9. Click OK.

Creating and Configuring an Oracle Tuxedo Connection Shared Resource After creating a project, you can add an Oracle Tuxedo Connection shared resource to establish connection between the plug-in and the Oracle Tuxedo system.

Prerequisites

The Oracle Tuxedo Connection shared resource is available at the Resources level. Ensure that you have created a project. See Creating a Project for details.

Procedure

1. In the Project Explorer view, expand the created project. 2. Right-click the Resources folder, and then click New > Oracle Tuxedo Connection to open the Oracle Tuxedo Connection Client wizard. 3. In the Oracle Tuxedo Connection Client dialog, package name, and resource name of the Oracle Tuxedo connection are provided by default. If you do not want to use the default configurations, change them accordingly. Click Finish to create the Tuxedo Client Connection. In a project, all the Oracle Tuxedo Connection shared resources cannot use the same name, even if the shared resources belong to different packages.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 15

4. In the Connection Client panel, enter the Workstation Listener Network Address. 5. Click Save.

Configuring a Process After creating a project, an empty process is created. You can add activities to an empty process to complete a task.

Prerequisites

Ensure that you have created an empty process when creating a project. See Creating a Project for details.

Procedure

1. In the Project Explorer view, click the created project and open the empty process from the Processes folder. 2. Select an activity from the Palette view and drop it in the Process editor. For example, select and drop the Invoke Oracle Tuxedo Service activity from the Oracle Tuxedo palette.

3. Drag the icon to create a transition between the added activities.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 16

4. Configure the added Oracle Tuxedo activity. See Oracle Tuxedo Palette for details. 5. Click File > Save to save the project.

Testing a Process After configuring a process, you can test the process to check whether the process completes your task.

Prerequisites

● Ensure that you have configured a process. See Configuring a Process for details.

● Environment Variables TUXDIR and LD_LIBRARY_PATH are set appropriately. See Set Environment Variables for more information.

● Oracle Tuxedo client libraries must be installed on the machine.

Procedure

1. On the toolbar, click Debug > Debug Configurations. 2. Click BusinessWorks Application > BWApplication in the left panel. By default, all the applications in the current workspace are selected in the Applications tab. Ensure that only the application you want to debug is selected in the Applications tab in the right panel. 3. Click Debug to test the process in the selected application. TIBCO Business Studio changes to the Debug perspective. The debug information is displayed in the Console view.

You need to set up environment variable TUXDIR and LD_LIBRARY_PATH.

4. In the Debug tab, expand the running process and click an activity. 5. In the upper-right corner, click the Job Data tab, and then click the Output tab to check the activity output.

Deploying an Application After testing, if the configured process works as expected, you can deploy the application that contains the configured process into a runtime environment, and then use the bwadmin utility or TIBCO Enterprise Administrator to manage the deployed application. Before deploying an application, you must generate an application archive, which is an enterprise archive (EAR) file that is created in TIBCO Business Studio. Deploying an application involves the following tasks:

1. Uploading an application archive 2. Deploying an application archive 3. Starting an application

Before deploying an application, you need to set up environment variable TUXDIR and LD_LIBRARY_PATH. See Set Environment Variables for details. See TIBCO ActiveMatrix BusinessWorks Administration for more details about how to deploy an application.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 17

TIBCO Business Studio Overview TIBCO Business Studio is an Eclipse-based integration development environment that is used to design, develop, and test TIBCO ActiveMatrix BusinessWorks applications. TIBCO Business Studio provides a workbench in which you can create, manage, and navigate resources in your workspace. A workspace is the central location on your machine where all data files are stored.

The workbench consists of:

● Menu: contains menu items such as File, Edit, Diagram, Navigate, Search, Project, Run, Window, and Help.

● Toolbar: contains buttons for frequently used commands such as New , Save , Enable/ Disable Business Studio Capabilities , Create a new BusinessWorks Application Module , Create a new BusinessWorks Shared Module , Debug , Run , and so on.

● Perspective: contains an initial set and layout of views that are required to perform a certain task. TIBCO Business Studio launches the Modeling perspective by default. You can change the perspective from the menu Window > Open Perspective > Perspective_Name.

● View: displays resources. For example, the Project Explorer view displays the TIBCO ActiveMatrix BusinessWorks applications, modules, and other resources in your workspace, and the Properties view displays the properties for the selected resource. You can open a view from the menu Window > Show View > View_Name.

● Editor: provides a canvas to configure, edit, or browse a resource. Double-click a resource in a view to open the appropriate editor for the selected resource. For example, double-click a BusinessWorks process (Process.bwp) in the Project Explorer view to open the process in the editor.

● Palette: contains a set of widgets and a palette library. A palette groups activities that perform similar tasks, and provides quick access to activities when configuring a process.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 18

Oracle Tuxedo Schema Shared Resource

This section contains information on how a schema is maintained and managed in a TIBCO ActiveMatrix BusinessWorks project as part of the plugin. You can use the Oracle Tuxedo Schema shared resource to generate XSD schemas required by TIBCO ActiveMatrix BusinessWorks from the input and output header files of the Oracle Tuxedo service. Prior to using the Oracle Tuxedo Schema shared resource, the input and output C header files must be generated by the Oracle Tuxedo server.

To refresh existing XSD schemas, re-generate the XSD schemas. The updated schemas would then reflect in the Invoke Oracle Tuxedo Service activity.

General

The General panel contains the following fields:

Module Field Property? Description

Package No The name of the package where the shared resource is located.

Name No The name to be displayed as the label for a shared resource in the process.

Description No Provide a short description for a shared resource.

You can refresh the XSD schemas, but the schemas referenced in the Invoke Oracle Tuxedo service activity would not be refreshed. To refresh the XSD schema associated to an existing Invoke Oracle Tuxedo service, delete the Invoke Oracle Tuxedo service activity and create it again.

Oracle Tuxedo Configuration

The Oracle Tuxedo Configuration panel contains the following fields:

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 19

Module Field Property? Description

Input Header Yes Specify a header file that can be used as input for the XSD schema. File

Output Yes Specify a header file that can be used as output for the XSD schema. Header File

Since synchronous request/reply pattern is supported by the activity, both the Input and Output header files are required. Once both header files are provided, the Generate XSD schema button would be enabled.

Support for Oracle Tuxedo Data Types

● Data types based only on the FML32 interface are supported. They are as follows:

— Char

— Double

— Float

— Long

— Short

— String Once the XSD schema is generated, the schema would show using the below structure.

Under the TIBCO ActiveMatrix BusinessWorks Schemas folder, a Tuxedo folder would be created. Inside the Tuxedo folder, Input and Output folders would be created. The Input folder contains the XSD schemas corresponding to the input header files for the Oracle Tuxedo services. The Output folder contains the XSD schemas corresponding to the output header files for the Oracle Tuxedo services.

The names of the folders mentioned in above structure cannot be modified. Similarly, renaming or deleting is not supported for the generated schema files.

Examples

Following are the examples of a typical header file and a generated XSD file

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 20

Header File

Generated XSD File

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 21

Oracle Tuxedo Connection Shared Resource

The plug-in supports inbound connectivity to Oracle Tuxedo as an Oracle Tuxedo Workstation client. You can use the Oracle Tuxedo Connection shared resource to maintain connection configuration for the Invoke Oracle Tuxedo Service activity. There is no connection pooling maintained in the shared resource.

General

In the General panel, you can specify the package where the shared resource is stored in the Package field, and provide a short description for this shared resource in the Description field. The panel also shows the shared resource name, which you defined when creating the shared resource.

Connection Client

In the Connection Client panel, you need to specify a Workstation Listener Network Address to connect to the Oracle Tuxedo server. The Workstation Listener Network Address is the IP address of the WSL (Workstation Listener) used by the plug-in along with a free port number; for example, // :. This value must be consistent to the configuration maintained in the ubbconfig file. For information on maintaining the ubbconfig file, refer to below link. https://docs.oracle.com/cd/E13203_01/tuxedo/tux80/atmi/rf537.htm

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 22

Oracle Tuxedo Palette

A palette groups the activities that connect the same external applications together. An Oracle Tuxedo palette is added after installing TIBCO ActiveMatrix BusinessWorks Plug-in for Oracle Tuxedo. The Oracle Tuxedo palette contains the following activity:

● Invoke Oracle Tuxedo Service Invoke Oracle Tuxedo Service Use the Invoke Oracle Tuxedo Service activity to invoke an Oracle Tuxedo service as a synchronous request/response. Asynchronous requests are not supported.

General

In the General tab, you can specify the reference to the Oracle Tuxedo Connection shared resource and XSD schemas related to the Oracle Tuxedo service invoked by the activity. The following table lists the configurations in the General tab of the Invoke Oracle Tuxedo Service activity:

Module Field Property? Description

Name No Specify the name to be displayed as the label for the activity in the process.

Oracle Tuxedo Yes Click to select an Oracle Tuxedo Connection shared resource. Connection The Oracle Tuxedo Connection is strictly used for runtime since schema is downloaded using the Oracle Tuxedo Schema shared resource.

Input Schema No The XSD schema used for the request to the Oracle Tuxedo server. Click the Load Input Schema button to pick up the schema.

Output Schema No The XSD schema used for the reply from the Oracle Tuxedo server. Click the Load Output Schema button to pick up the schema.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 23

Description

In the Description tab, you can enter a short description for the Invoke Oracle Tuxedo Service activity.

Input

The Input tab contains the request message for invoking the Oracle Tuxedo service.

Output

The Output tab contains the reply message from the Oracle Tuxedo service.

Fault

The Fault tab contains the fault schemas used by the activity when generating a specific error. The fault name would be TuxedoPluginException. The following table lists error schema elements in the Fault tab of the Invoke Oracle Tuxedo Service activity:

Error Schema Element Data Type Description

msg String Displays the error message.

msgCode String Displays the error code.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 24

Job Tuning

You can configure the Oracle Tuxedo activities to control the number of messages being processed concurrently. See "Engine and Job Tuning" in TIBCO ActiveMatrix BusinessWorks Administration for related information about job tuning. The number of messages processed concurrently by the Invoke Oracle Tuxedo service is dependent on the number of threads available in the TIBCO ActiveMatrix BusinessWorks engine. As the TIBCO ActiveMatrix BusinessWorks engine is scaled, the Invoke Oracle Tuxedo service would be scaled accordingly. When configuring the number of threads per TIBCO ActiveMatrix BusinessWorks engine and/or number of TIBCO ActiveMatrix BusinessWorks appnodes, you need to consider the number of Oracle Tuxedo Workstation clients that can be accepted concurrently by the Oracle Tuxedo server. For tuning the number of Oracle Tuxedo Workstation clients, refer to following.

Tuning the Number of Oracle Tuxedo Workstation Clients

On Oracle Tuxedo server side, the parameters mentioned below need to be considered in the UBBCONFIG file.

● To enable Oracle Tuxedo Workstation clients to join an application, specify the MAXWSCLIENTS parameter in the MACHINES section of the UBBCONFIG file. MAXWSCLIENTS tells the Oracle Tuxedo system at boot time how many accesser slots to reserve exclusively for Oracle Tuxedo Workstation clients.

● To join Oracle Tuxedo Workstation clients to an application, specify the Workstation listener (WSL) processes in the SERVERS section of the UBBCONFIG file and set the proper values for the option -m and the option -M in the CLOPT command line options.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 25

Troubleshooting

When you encounter problems with the project, ensure that you have cleaned up the project. If errors occur when you run a process in TIBCO Business Studio, you can do a cleaning first. Cleaning deletes all the old files and reorganizes the project.

Procedure

1. Right-click the project in the Project Explorer view and click Refresh. 2. Select Project > Clean to start the cleaning.

If the plug-in fails to connect to the application on the Oracle Tuxedo server, one of reasons might be that the ports for Workstation Listener (WSL) or Workstation Handler (WSH) are not open. Please check the firewall settings accordingly.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 26

Managing Logs

When an error occurs, you can check logs to trace and troubleshoot the plug-in exceptions. By default, error logs are displayed in the Console view when you run a process in the debug mode. You can change the log level of the plug-in to trace different messages and export logs to a file. Different log levels correspond to different messages. See Log Levels for details. Log Levels Different log levels include different information. The plug-in supports the following log levels:

Log Level Description

Trace Includes all information regarding the running process.

Debug Indicates a developer-defined tracing message.

Info Indicates normal plug-in operations. No action is required. A tracing message tagged with Info indicates that a significant processing step is reached, and logged for tracking or auditing purposes. Only info messages preceding a tracking identifier are considered as significant steps.

Warn Indicates that an abnormal condition occurred. Processing continues, but for best practice, you can contact the administrator to investigate it.

Error Indicates that an unrecoverable error occurred. Depending on the severity of the error, the plug-in might continue with the next operation or might stop.

Setting Up Log Levels You can configure a different log level for the plug-in and plug-in activities to trace different messages. If you do not configure any log levels, the plug-in uses the default log level of TIBCO ActiveMatrix BusinessWorks. The default log level is Error.

Procedure

1. Navigate to the TIBCO_HOME/bw/version_number/config/design/logback directory and open the logback. file. 2. Add the following node in the BusinessWorks Palette and Activity loggers area to specify a log level for the plug-in:

The value of the level element can be Error, Info, or Debug.

If you set the log level to Debug, the input and output for the plug-in activities are also displayed in the Console view. See Log Levels for more details regarding each log level. 3. Save the file.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 27

Exporting Logs to a File You can update the logback.xml file to export plug-in logs to a file.

Procedure

1. Navigate to the TIBCO_HOME/bw/version_number/config/design/logback directory and open the logback.xml file. After deploying an application in TIBCO Enterprise Administrator, navigate to the TIBCO_HOME/bw/version_number/domains/domain_name/appnodes/space_name/ node_name directory to find the logback.xml file. 2. Add the following node to specify the file where the log is exported: c:/bw6-tux.log %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36}-%msg%n

The value of the file element is the absolute path of the file that stores the exported log.

3. Add the following node to the root node at the bottom of the logback.xml file: 4. Save the file.

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 28

Error Codes

The following tables list error codes, detailed explanation of each error, and where applicable, ways to solve different errors.

Oracle Tuxedo Connection Error Codes

Error Code and Error Message Role Category Description Solution

TIBCO-BW-PALETTE- Unexpected BW-Plug- Print the This is an internal TUX-000001 or coding in unexpected or error. Contact errors coding errors. TIBCO Support. {0}

TIBCO-BW-PALETTE- TRACE BW-Plug- Print the trace This is a trace TUX-100001 in information. message and resolution is not {0} applicable.

TIBCO-BW-PALETTE- TRACE BW-Plug- The Oracle This is a trace TUX-100002 in Tuxedo Service message and [{0}] has been resolution is not The Oracle Tuxedo invoking. applicable. Service [{0}] has been invoking.

TIBCO-BW-PALETTE- TRACE BW-Plug- The Oracle This is a trace TUX-100003 in Tuxedo Service message and [{0}] has been resolution is not The Oracle Tuxedo invoked applicable. Service [{0}] has been successfully. invoked successfully.

TIBCO-BW-PALETTE- DEBUG BW-Plug- Print the debug This is a debug TUX-200001 in information. message and resolution is not {0} applicable.

TIBCO-BW-PALETTE- DEBUG BW-Plug- Print the details of This is a debug TUX-200102 in InvokeOracleTuxe message and doService. resolution is not Configuration details applicable. of activity [{0}] is [{1}]. Process=[{2}], Module=[{3}], DeploymentUnit=[{4}: {5}].

TIBCO-BW-PALETTE- DEBUG BW-Plug- Print the input This is a debug TUX-200103 in data of message and InvokeOracleTuxe resolution is not Input details of doService. applicable. activity [{0}] is [{1}].

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 29

Error Code and Error Message Role Category Description Solution

TIBCO-BW-PALETTE- DEBUG BW-Plug- Print the output This is a debug TUX-200104 in data of message and InvokeOracleTuxe resolution is not Output details of doService. applicable. activity [{0}] is [{1}].

TIBCO-BW-PALETTE- ERROR BW-Plug- Error due to Specify Oracle TUX-500002 in Oracle Tuxedo Tuxedo Connection Connection Error due to Oracle sharedresource sharedresource in Tuxedo Connection not specified. the activity. sharedresource not specified.

TIBCO-BW-PALETTE- ERROR BW-Plug- Error due to Verify the input TUX-500003 in invalid value data of activity. specified. Field Error due to invalid Name=[{0}], Field value specified. Field Value=[{1}]. Name=[{0}], Field Value=[{1}].

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 30

Error Code and Error Message Role Category Description Solution

TIBCO-BW-PALETTE- ERROR BW-Plug- Error occurred For determining TUX-500005 in during executing the cause of the native method. Error occurred during error code Error Code = [{0}]. executing native returned by the method. Error Code = Oracle Tuxedo [{0}]. server, refer to the below definitions along with the link from Oracle. /* * tperrno values - error codes */

#define TPMINVAL 0

#define TPEABORT 1

#define TPEBADDESC 2

#define TPEBLOCK 3

#define TPEINVAL 4

#define TPELIMIT 5

#define TPENOENT 6

#define TPEOS 7

#define TPEPERM 8

#define TPEPROTO 9

#define TPESVCERR 10

#define TPESVCFAIL 11

#define TPESYSTEM 12

#define TPETIME 13

#define TPETRAN 14

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide 31

Error Code and Error Message Role Category Description Solution

#define TPGOTSIG 15

#define TPERMERR 16

#define TPEITYPE 17

#define TPEOTYPE 18

#define TPERELEASE 19

#define TPEHAZARD 20

#define TPEHEURISTIC 21

#define TPEEVENT 22

#define TPEMATCH 23

#define TPEDIAGNOSTIC 24

#define TPEMIB 25

#define TPMAXVAL 26 https:// docs.oracle.com/cd /E13161_01/ tuxedo/ docs10gr3/rf5/ rf5.html#wp102688 4

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Oracle Tuxedo User's Guide