JD Edwards EnterpriseOne

Transaction Server Reference Guide

Release 9.1 for Microsoft Windows using Oracle WebLogic

E24429-06

December 2013

JD Edwards EnterpriseOne Transaction Server Reference Guide, Release 9.1 for Microsoft Windows using Oracle WebLogic

E24429-06

Copyright © 2011, 2013, Oracle and/or its affiliates. All rights reserved.

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

Contents

Preface

- Documentation Accessibility

- Related Documents

- Conventions

1 Understanding the Transaction Server Components

- 1.1 Overview

- 1.2 Certifications (Formerly Known as Minimum Technical Requirements)

- 1.3 Obtaining the Transaction Server Managed Software Component

- 1.4 Prerequisites

- 1.5 Understanding Transaction Server Communications

2 Configuring the Transaction Server Components

- 2.1 JDBj Database Configuration

- 2.1.1 JDBj Bootstrap Datasource

- 2.1.2 JDBj Bootstrap Session

- 2.1.3 JDBj Connection Pools

- 2.1.4 JDBC Drivers

- 2.1.5 JDBj Logging

- 2.1.6 Oracle Database Settings

- 2.1.7 JDBj Runtime Properties

- 2.1.8 JDBj Spec Datasource

- 2.2 Real Time Events

- 2.2.1 Event Processor Configuration Settings

- 2.2.2 Trigger Listener Kernel

- 2.3 Network Settings

- 2.3.1 JDENET Configuration

- 2.3.2 Security Server Configuration

- 2.4 Log File Configuration (jdelog.properties)

3 Configuring JD Edwards EnterpriseOne

- 3.1 Verifying User Defined Codes (UDCs)

- 3.2 Verifying Tables

- 3.3 Verifying Serialized Objects

- 3.4 Activating Events

- 3.5 Creating Triggers

4 Adding a Subscriber

- 4.1 Setting Processing Options for Event Subscribers Application (P90702A)

- 4.2 Using Event Subscribers Application to Add a Subscriber

- 4.3 Working with Subscribers in JD Edwards EnterpriseOne

- 4.3.1 Adding a JAVACONN Subscriber

- 4.3.2 Creating a JMSQUEUE Subscriber

- 4.3.3 Creating a JMSTOPIC Subscriber

- 4.3.4 Creating a Subscription

- 4.3.5 Adding an Event to the Subscription

- 4.3.6 Adding Environment(s) to a Subscription

5 Troubleshooting Real Time Events Processing

6 Upgrading the Transaction Server RTE Software Component Using Server Manager

7 Uninstalling the Transaction Server RTE Software Component using Server Manager

A Architecture of the Guaranteed Event System

B Creating and Configuring Multiple Transaction Servers per Environment or User/Role

- B.1 Creating and Configuring Multiple Transaction Servers per Environment

- B.2 Creating and Configuring Multiple Transaction Servers per Role/User

C Working with JMS Topic or JMS Queue

- C.1 Use Case for JMS Topic

- C.2 Use Case for JMS Queue

D Testing and Validating the JMSQUEUE Configuration

E Creating a JMS Topic in the JD Edwards EnterpriseOne Transaction Server Application

F Creating a Subscriber JMS Queue in WebLogic Server other than Transaction Server

- F.1 Creating the JMS Server

- F.2 Creating the JMS Module

- F.3 Creating the JMS Resource

G Creating an Oracle JD Edwards EnterpriseOne Service Request for Transaction Server Support

H Clustering for the JD Edwards Transaction Server on WebLogic Server

- H.1 Understanding WebLogic Clustering

- H.2 Creating a Cluster on WebLogic Server

- H.3 Creating the Servers

- H.4 Creating Machines

- H.5 Associate Machines with Servers

- H.6 Cluster the Servers

- H.7 Setup the Cluster for Load Balancing

- H.8 Setup the Cluster for Failover

- H.9 Installing the Transaction Server RTE Component on WebLogic Server using Server Manager

- H.10 Using JDBC Persistent Stores

- H.11 Create JDBC Datasources

- H.12 Create JDBC Persistent Stores

- H.13 Associate a JMS Server with a Persistent Store

- H.14 Additional Configuration for Using Horizontal Cluster

Preface

Welcome to the JD Edwards EnterpriseOne Transaction Server Reference Guide for Microsoft Windows Oracle WebLogic.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Related Documents

You can access related documents from the JD Edwards EnterpriseOne Release Documentation Overview pages on My Oracle Support. Access the main documentation overview page by searching for the document ID, which is 876932.1, or by using this link:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=876932.1

To navigate to this page from the My Oracle Support home page, click the Knowledge tab, and then click the Tools and Training menu, JD Edwards EnterpriseOne, Welcome Center, Release Information Overview.

The most current versions of this guide and all other JD Edwards EnterpriseOne Tools and Installation/Upgrade documentation is available on the Oracle Technology Network:

http://www.oracle.com/technetwork/documentation/jdedent-098169.html

This guide contains references to server configuration settings. It is highly recommended that you only access and manage these settings for the supported server types using the Server Manager program. For additional details, refer to the JD Edwards EnterpriseOne Server Manager Guide.

Conventions

The following text conventions are used in this document:

Convention

Meaning

boldface

Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.

italic

Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.

monospace

Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

1 Understanding the Transaction Server Components

This chapter describes:

- Section 1.1, "Overview"

- Section 1.2, "Certifications (Formerly Known as Minimum Technical Requirements)"

- Section 1.3, "Obtaining the Transaction Server Managed Software Component"

- Section 1.4, "Prerequisites"

- Section 1.5, "Understanding Transaction Server Communications"

1.1 Overview

The JD Edwards EnterpriseOne Transaction Server Components installer performs the installation, upgrade, and configuration of the Transaction Server Components. These components provide the Real Time Events functionality on the Transaction Server.

This document is not a substitute for the administration manuals provided by your Oracle WebLogic Application Server vendor, the network administration manuals provided by your network vendor, or the installation and configuration manuals for third-party products used with JD Edwards EnterpriseOne.

The procedures in this guide support the Oracle WebLogic Application Server. This document is designed for management information system (MIS) managers and installers. To successfully install the Transaction Server Components on an Application Server, you must have a working knowledge of these topics:

- Hardware and software requirements

- Oracle WebLogic Application Server setup and administration

- JD Edwards EnterpriseOne platforms and operating systems

The recommended method of obtaining this information is to attend the relevant training courses. Information about course offerings, dates, and locations is available on My Oracle Support. At a minimum, read these guides before beginning:

- JD Edwards EnterpriseOne Tools Foundation Guide

- JD Edwards EnterpriseOne Tools Configurable Network Computing Implementation Guide

- JD Edwards EnterpriseOne Tools System Administration Guide

- JD Edwards EnterpriseOne Tools Package Management Guide

- JD Edwards EnterpriseOne Tools Server and Workstation Administration Guide

1.2 Certifications (Formerly Known as Minimum Technical Requirements)

Customers must conform to the supported platforms for the release as detailed in the JD Edwards EnterpriseOne Certifications (formerly known as Minimum Technical Requirements). In addition, JD Edwards EnterpriseOne may integrate, interface, or work in conjunction with other Oracle products. Refer to the following link for cross-reference material in the Program Documentation for Program prerequisites and version cross-reference documents to assure compatibility of various Oracle products.

http://www.oracle.com/corporate/contracts/index.html

Refer to the Certifications tab on My Oracle Support and search for this product:

- JD Edwards EnterpriseOne Transaction Server.

For additional information on using Certifications, refer to this document on My Oracle Support (https://support.oracle.com):

- Certifications FAQ for JD Edwards EnterpriseOne [Article ID 1525328.1]

1.3 Obtaining the Transaction Server Managed Software Component

You can obtain the Transaction Server Managed Software Component from:

- Update Center

- Change Assistant

The name of the component to download is called 91xTy, where x is the major tools release (for example, 9.1) and y is the maintenance release. For example, the Managed Software Component for the Transaction Server for 9.1.3.0 is called 91T30.

Note:
Once obtained, the Transaction Server Managed Software Component is installed using the JD Edwards EnterpriseOne tool called Server Manager. Refer to the JD Edwards EnterpriseOne Server Manager Guide for additional details.

1.4 Prerequisites

These prerequisites are required prior to installing the Transaction Server Components on an Application Server.

- Oracle WebLogic Application Server must be installed, configured and running. Refer to the JD Edwards EnterpriseOne 9.1.X HTML Server Certifications (Doc ID 1506201.1) for JD Edwards EnterpriseOne-specific installation instructions for the application servers (including patches).

- Verify that your installation meets the prerequisites for installing the Oracle WebLogic Application Server at this link:
http://www.oracle.com/us/products/middleware/cloud-app-foundation/weblogic/overview/index.html

1.5 Understanding Transaction Server Communications

The JD Edwards EnterpriseOne Server Manager communicates with the Transaction Server using JMX (Java Management Extensions). The Embedded Agent in the Transaction Server does not connect to HTTP nor does it connect using Plugins. This is the mechanism by which Server Manager manages the Transaction Server.

The Embedded Agent generally allocates ports in an incremental manner. For example, if a Server Manager Agent installed on the machine is running on port number 14502 (default) then the Embedded Agents running inside managed instances on that machine would allocate ports starting from 14502+1=14503, 14504, and so on depending on the number of managed instances on that machine.

Tip:
In order to ascertain the Port Number on which the Transaction Server Embedded Agent is running, open the <CONTAINER_NAME>.log file of the J2EE Container and search for the string *Management Agent* which should take you to a line containing this string:

00000017 Server I Starting the management agent listener on port '14503'

The Transaction Server communicates with the JD Edwards EnterpriseOne Enterprise Servers using the EnterpriseOne Proprietary Communication Protocol; that is, JDENET messages.

The Transaction Server connects to the JD Edwards EnterpriseOne database using proprietary database middleware (JDBj). The default ports are dependent on the database type:

- 1521 for Oracle database

- 1433 for SQL Server database

- 50000 for DB2 database

Although the above are default ports, it is possible to run these databases on different ports. Further, these ports are only defined for the Bootstrap database. The JDBj code retrieves the port numbers for the other databases from the Data Source Master Table based on the port numbers for each of the Data Source records as configured during the Planner and Workbench and the Work with Data Sources Application.

2 Configuring the Transaction Server Components

You must use Server Manager Console to install and configure Transaction Server instances. These Server Manager settings for the Transaction Server are found under Configuration section of Transaction Server Instance:

- Section 2.1, "JDBj Database Configuration"

- Section 2.2, "Real Time Events"

- Section 2.3, "Network Settings"

- Section 2.4, "Log File Configuration (jdelog.properties)"

2.1 JDBj Database Configuration

These sections of Server Manager control the JDBj settings:

- Section 2.1.1, "JDBj Bootstrap Datasource"

- Section 2.1.2, "JDBj Bootstrap Session"

- Section 2.1.3, "JDBj Connection Pools"

- Section 2.1.4, "JDBC Drivers"

- Section 2.1.5, "JDBj Logging"

- Section 2.1.6, "Oracle Database Settings"

- Section 2.1.7, "JDBj Runtime Properties"

- Section 2.1.8, "JDBj Spec Datasource"

2.1.1 JDBj Bootstrap Datasource

This section defines the data source where OCM and some other system tables reside. JDBj uses this at bootstrap time and later to look up OCM entries on demand. If the information entered here is not valid, you cannot access the JD Edwards EnterpriseOne database.

With a Transaction Server instance selected, the following shows typical values:

Below is a list of the settings and typical values:

- System Datasource Name
Enter the name of your System datasource. For example:

System - 910

- Database Type
Use the pulldown to select your database type.

- Database Name
Enter your database name.

- Database Server Name
Enter the name of your database server.

- Database TCP/IP Port
Enter the TCP/IP port for your database.

- Physical Database
Optionally you can choose to specify your physical database.

- Object Owner
Enter the object owner for the System datasource. For example:

SY910

2.1.2 JDBj Bootstrap Session

This information is used to sign on with access to system tables. For JD Edwards EnterpriseOne HTML servers, only the user and environment need to be supplied. JDBj signs this user on during the bootstrap process. If the sign on information is not valid, then no access is granted to the JD Edwards EnterpriseOne database. To configure as a Portal WSRP Producer, you must supply a valid EnterpriseOne user and environment and the password and role settings are optional.

With a Transaction Server instance selected, the following shows typical values:

Below is a list of the settings and typical values:

- Bootstrap User
Enter the name of your Boostrap User. For example:

JDE

- Bootstrap User
Enter the password for your Boostrap User.

- Bootstrap Role
Enter the role of your Boostrap User. For example:

*ALL

- Bootstrap Environment
Enter the bootstrap environment. For example:

JDV910

2.1.3 JDBj Connection Pools

These settings control the database connection pooling (sharing of connections) within JDBj. Connections are pooled at the physical datasource level, not the EnterpriseOne logical datasource level.

With a Transaction Server instance selected, the following shows typical values:

Below is a list of the settings and typical values:

- Minimum Connections
Enter a value. For example:

0

- Maximum Connections
Enter a value. For example:

50

- Pool Growth Size
Enter a value. For example:

5

- Initial Connections
Enter a value. For example:

5

- Connection Timeout
Enter a value in milliseconds. For example:

1800000

- Pool Cleaning Interval
Enter a value in milliseconds. For example:

300000

- Maximum Prepared Statements
Enter a value. For example:

50

- Cache Purge Size
Enter a value. For example:

5

2.1.4 JDBC Drivers

These settings specify which JDBC drivers to use for a particular database type.

With a Transaction Server instance selected, the following shows typical values:

Below is a list of the settings and typical values:

- Oracle JDBC Driver
Enter a value. For example:

oracle.jdbc.driver.OracleDriver

- AS/400 JDBC Driver
Enter a value. For example:

com.ibm.as400.acess.AS400JDBCDriver

- SQL Server JDBC Driver
Enter a value. For example:

com.microsoft.sqlserver.jdbc.SQL ServerDriver (SQL Server)

- UDB JDBC Driver
Enter a value. For example:

COM.ibm.db2.jdbc.app.DB2Driver

2.1.5 JDBj Logging

This setting enables JDBC tracing from the JDBC drivers.

With a Transaction Server instance selected, the following shows typical setting:

- Enable JDBC Trace
Click the checkbox to enable or disable a JDBC trace from the JDBC drivers.

2.1.6 Oracle Database Settings

This section contains settings that are specific to utilizing Oracle databases. The TNSNAMES.ORA must contain the appropriate connection information for the Oracle database(s) this product will utilize. You may either select an existing location or use the text area to create a new file and update its contents. The TNSNAMES.ORA that is configured for the Management Console (home instance) will be used as a template for additional web products that are installed.

With a Transaction Server instance selected, the following shows typical values:

Below is a list of the settings and typical values:

- TNSNAMES.ORA Location
Specifies the location of the TNSNAMES.ORA file.

- File Contents
Displays the contents of the TNSNAMES.ORA file that will be used by the Server Manager Management Console.

2.1.7 JDBj Runtime Properties

These settings correspond to system runtime properties applicable to JDBj logical connections.

With a Transaction Server instance selected, the following shows the typical value:

Below is the setting:

- Transaction Timeout
Specifies a value for the transaction timeout. The default is 0.

2.1.8 JDBj Spec Datasource

This optional section defines the data source where the serialized spec tables reside. JDBj uses these parameters at bootstrap time and after to look up serialized spec objects on demand. If this section is not specified, then JDBj will use the OCM to find the serialized table. If it is not valid, no JD Edwards EnterpriseOne database access is possible.

With a Transaction Server instance selected, the following shows the typical values:

Below are the settings:

- System Datasource Name
Specifies a value for the System datasource name.

- Database Type
For example, a valid database type is Oracle Database.

- Database Name

- Database Server Name

- Database TCP/IP Port

- Physical Database

- Object Owner

- Supports Large Objects (LOBs)

- Unicode Database

- Database User Name

- Database Password

2.2 Real Time Events

This section describes these topics:

- Section 2.2.1, "Event Processor Configuration Settings"

- Section 2.2.2, "Trigger Listener Kernel"

2.2.1 Event Processor Configuration Settings

With a Transaction Server instance selected, the following shows the typical values for Event Processor Configuration Settings:

Below are the settings:

- Sequencing Behavior
This setting describes how the event sequencing occurs during Transaction Server processing.

Event sequencing behavior values are:

- AnySequence
Events can be delivered in any sequence.

- ByEventType
Events are guaranteed to be delivered in sequence by event type.

- ByUserSession
Events are guaranteed to be delivered in sequence by originating user session.

- GlobalFIFO
Events are guaranteed to be delivered in sequence by their original generation sequence. This option does not permit concurrent processing and may impact performance. When this option is selected the Processing Concurrency value is ignored.

- Processing Concurrency
This setting describes the number of concurrent event processing threads to run. Maximum of 4 concurrent threads can run enhancing the Transaction Server processing performance.

- Trigger Listener Delay
This setting specifies the time, in milliseconds, between timer checks of the database for events waiting to be processed. A negative value will disable the timer.

- Max Transfer Session Size
This setting specifies the maximum number of events to transfer in one transfer session (that is, one result set from the database).

- Initial Context Factory
The InitialContextFactory for the JNDI service of the event server. This value is set as per the transaction server environment.

- Provider URL
The Provider URL for the JNDI service of the event server. This value is automatically set as per the transaction server environment.

- Event Transfer Transaction Isolation
The transaction isolation level to be used by the transfer agent when reading commited events from the database.

Suggested values based on database server type hosting the F90710 table are shown in the following table:

Server Type

Isolation Level

AS/400

repeatable read

Oracle

serializable

SQL Server

serializable

IBM DB2

repeatable read

- Event Client Session Check Interval
This configuration is to check the frequency to check for an expired session.

- Event Client session Timeout
This configuration is to check how long a session can be idle before it is timed out.

- App Server JDNI User

- App Server JDNI Password

2.2.2 Trigger Listener Kernel

This setting applies to the TriggerListener Kernel thread responsible to receive messages from the Enterprise Server that an event has been triggered. All of the configuration settings found under this section are predefined and should not be changed.

2.3 Network Settings

This section describes these topics:

- Section 2.3.1, "JDENET Configuration"

- Section 2.3.2, "Security Server Configuration"

2.3.1 JDENET Configuration

These settings configure how JDENET, which is the EnterpriseOne messaging protocol, is configured. Any changes to the JDENET configuration will require restarting the server to take effect.

Below are the settings:

- Outgoing JDENET Port

- Back Off Time

- Incoming JDENET Port

- Kernel Ranges

- Timeout Threshold

- Pool Size

2.3.2 Security Server Configuration

These settings configure the EnterpriseOne Enterprise Server to use for security services for this instance. Any changes you make here will not take effect until the server is restarted.

Below are the settings:

- Security Server Count

- Primary Security Server

- Secondary Security Server

- Third Security Server

- Fourth Security Server

- First Security Server

2.4 Log File Configuration (jdelog.properties)

This section is used to configure logs. You may add, remove, or configure the log files contained within this section. You must click the Apply button on this form to save any changes made to this Log Configuration section.

3 Configuring JD Edwards EnterpriseOne

After configuring your Transaction Server, you must set up the Transaction Server Components data for your JD Edwards EnterpriseOne environments to properly generate events.

This chapter discusses:

- Section 3.1, "Verifying User Defined Codes (UDCs)"

- Section 3.2, "Verifying Tables"

- Section 3.3, "Verifying Serialized Objects"

- Section 3.4, "Activating Events"

- Section 3.5, "Creating Triggers"

3.1 Verifying User Defined Codes (UDCs)

The Transaction Server Components requires the specific User Defined Codes (UDCs) to be populated as shown in this table.

Note:
By default, the UDCs are delivered and populated correctly. The information in this section is only provided for verification purposes.

UDC

Purpose

H90/EC

Event Category

H90/TP

Event Transport Parameter Type

3.2 Verifying Tables

The Transaction Server Components requires the use of the tables listed below. The default configuration for RTE is where all of the F907* tables (event tables) reside in one datasource. Out of the box these tables are included in the System datasource database (that is, SY910). Using this default configuration, only one Transaction Server may be configured to monitor the F907* tables. Verify that these tables were created in the JD Edwards EnterpriseOne environments that will generate Real Time Events (RTE) events. Ensure that the server map OCMs and client map OCMs point to the same set of tables.

Table

Description

F90701

Interoperability Event Definition

F90705

Event Activation

F90706

Event Subscriber

F90707

Event Subscription

F907071

Subscribed Events

F907072

Subscribed Environments

F90708

Event Sequence

F90710

Event Transfer

F90711

Event Transport Parameters

F90712

Event Transfer Failure

F90715

Event Subscriber Queues

F90720

Event Metrics

F90730

Unique Sequence

3.3 Verifying Serialized Objects

Serialized objects for tables, specs, and data structures must exist on the database machine. Verify that the serialized objects have been generated and copied to the database machine. For more information on performing the generation, see the JD Edwards EnterpriseOne HTML Web Server Reference Guide, specific for your platform, and the Generating JD Edwards EnterpriseOne Serialized Objects chapter.

3.4 Activating Events

Using this procedure, you must use JD Edwards EnterpriseOne universal batch engine (UBE) processes to convert the existing event data to be compatible with the new tables.

1. Run the Populate Event Activation Status Table (R90705) to create an activation record for every environment for every event defined in the F90701 table. Through use of the processing options you can process this UBE for all events and all environments or for a single event and/or environment. You can run this UBE multiple times if necessary.

2. On Processing Options, Create Event Activation Rules, complete these fields:

Field

Description

Specify the event name to create records for:

If you leave this field blank, records are created for all events. If you specify a value for this field, records are only created for the specified event name regardless of what is specified in the event type specification.

Specify the interoperability event type to create records for:

If you leave this field blank, records are created for all event types. Valid event types are:

- RTE

- WF

- XAPI

- ZFILE

Specify the release of the environments that records are to be create for:

If you leave this field blank, records are created for all environments. Values are supported releases of JD Edwards EnterpriseOne, specified by internal designations.

Note:
You may use data selection to select on events that are currently active in the event system to convert.

3. Run the Convert Event Subscriptions (R90706) UBE to populate the Queue Assignment Table (F90715) with the subscriber queues defined in the Transaction Server. You can use processing options to initially create your subscriber queue records and convert your subscribers and subscriptions. Later if you add new subscribers you can use this UBE to only create the new subscriber queue records. Initially there are 16 subscriber queues delivered with JD Edwards EnterpriseOne.

Note:
The R90706 program does not create the subscriber queues. Instead, 16 of these subscriber queues were created during the initial installation of the Transaction Server Components on an Application Server. If you have more than 16 subscribers you will need to create the additional queues using Application Server administrator tools prior to running this program.

4. On the Conversion Parameters tab, complete these fields:

Field

Description

Enter the number of subscriber queues to create:

Set this value to the number of subscriber queues for your installation. You must create a queue for every subscriber.

Enter the description that will be assigned to all converted subscriptions. If this field is left blank the default description will be "Subscription converted by R90706".

Enter a value to describe all converted description. If you leave this field blank the default description is "Subscription converted by R90706".

Do not convert subscriptions

Values are:
0: Convert subscriptions

1: Do not convert subscribers and subscriptions. The R90706 program only creates the number of subscriber queues that you specify and does not perform any conversions.

Note:
You may use data selection to select on events that are currently active in the event system to convert.

5. Run the Synch Z Events in F47002 with F90701 (R90701A) UBE to create event records in the F90701 for the z-event records in the F47002 table for records that do not currently exist in the F90701 table. There are no processing options for this UBE.

3.5 Creating Triggers

You must create a trigger on the F90710 table. Prior to running the trigger creation script, ensure that you have adequate database privileges required to create a trigger. This table lists the privileges by database.

Note:
Additionally, as described in the Prerequisites sections of this guide, you must obtain and install a specific ESU to enable the creation of triggers for Transaction Server Components.

Database

Required Privilege

IBM DB2 for System i

No special privileges are required.

IBM DB2

Grant the following privileges to the database proxy user. Replace jde in the following script with the actual database proxy user name.
GRANT CONTROL ON TABLE SY900.F90710 TO USER jde

Oracle

Grant the following privileges to the JDE_ROLE or the database proxy user.

GRANT CREATE ANY SEQUENCE TO JDE_ROLE;
GRANT DROP ANY SEQUENCE TO JDE_ROLE;
GRANT CREATE ANY TRIGGER TO JDE_ROLE;
GRANT DROP ANY SEQUENCE TO JDE_ROLE;

SQL Server

The database proxy user must have the privileges to create database triggers. Replace jde with the actual database proxy user name.

Exec sp_addrolemember db_owner,jde

You must create the (F90710) Event Transfer and the (F90730) Unique Sequence in the same JD Edwards EnterpriseOne data source. You should verify this configuration using OCM.

1. Run this script from a JD Edwards EnterpriseOne Microsoft Windows-based Web Development Client:
x:\JDEdwards\E900\system\bin32\dbtemplates.exe -create

2. After the scripts complete successfully, you should revoke any special privileges you granted in order to create the triggers. This table lists the revocation commands by database.

Database

Required Privilege

IBM DB2 for System i

No special privileges are required.

IBM DB2

Revoke the following privileges to the database proxy user. Replace
jde in the following script with the actual database proxy user name.

REVOKE CONTROL ON TABLE SY900.F90710 TO USER jde

Oracle

Revoke the following privileges to the JDE_ROLE or the database proxy user.

REVOKE CREATE ANY SEQUENCE  TO JDE_ROLE;
REVOKE DROP ANY SEQUENCE  TO JDE_ROLE;
REVOKE CREATE ANY TRIGGER  TO JDE_ROLE;
REVOKE DROP ANY SEQUENCE  TO JDE_ROLE;

SQL Server

Replace jde with the actual database proxy user name.

exec sp_droprolemember db_owner,jde

4 Adding a Subscriber

This chapter discusses these tasks:

- Section 4.1, "Setting Processing Options for Event Subscribers Application (P90702A)"

- Section 4.2, "Using Event Subscribers Application to Add a Subscriber"

- Section 4.3, "Working with Subscribers in JD Edwards EnterpriseOne"

4.1 Setting Processing Options for Event Subscribers Application (P90702A)

This section discusses how to set up the default values for the processing option.

To set Processing Options for P90702A:

1. Type IV in the Fast Path.

2. Type P90702A in the Interactive Application and click Find.

3. Select the row that appears in the grid and then click Processing Options from Row menu.

4. On Processing Options, edit the default values and click OK.

Note:
The values for these processing options are set by using an EnterpriseOne application as described in the next section of this chapter in the section entitled: Section 4.2, "Using Event Subscribers Application to Add a Subscriber".

4.2 Using Event Subscribers Application to Add a Subscriber

This section discusses how to add a subscriber to EnterpriseOne by executing the application P90702A.

To use P90702A to add a JMSQUEUE or JMSTOPIC subscriber:

1. Run the application P90702A from JAS.

2. Click the Add button. Enter the values as per any one of the following options:

The Initial Context Factory and Provider URL values are populated based on the selections for Application Server and Queue Location. Edit these values according to the environment. A processing option determines the default values.

The values for Connection Factory JNDI Name and Queue Name are the JNDI name for the subscriber Queue or Topic that is being created.

4.3 Working with Subscribers in JD Edwards EnterpriseOne

This section describes these tasks:

- Section 4.3.1, "Adding a JAVACONN Subscriber"

- Section 4.3.2, "Creating a JMSQUEUE Subscriber"

- Section 4.3.3, "Creating a JMSTOPIC Subscriber"

- Section 4.3.4, "Creating a Subscription"

- Section 4.3.5, "Adding an Event to the Subscription"

- Section 4.3.6, "Adding Environment(s) to a Subscription"

4.3.1 Adding a JAVACONN Subscriber

Use this procedure to add a JAVACONN subscriber in JD Edwards EnterpriseOne:

1. From a JD Edwards EnterpriseOne client, run P90702A to use the Add Event Subscriber application to add a subscriber.

Field

Description

Subscriber

The Subscriber field must have a value matching valid user in JD Edwards EnterpriseOne.

Subscriber Description

Enter this value:
JAVACONN Subscriber

Transport Type

Enter this value:.
JAVACONN

2. Click the OK button to accept the values.

3. Run the P90702A application and find the JAVACONN Subscriber created in the above step.

4. Activate the JAVACONN Subscriber by taking this Form Exit:
Row > Change Status

5. Change the status to AV (Active).

4.3.2 Creating a JMSQUEUE Subscriber

To create a JMSQUEUE subscriber:

1. From a JD Edwards EnterpriseOne client, run P90702A to use the Add Event Subscriber application to add a subscriber.

Field

Description

Subscriber

The Subscriber field must have a value matching valid user in JD Edwards EnterpriseOne.

Subscriber Description

Enter this value:
JMSQUEUE Subscriber

Transport Type

Enter this value:.
JMSQUEUE

Connection Factory JNDI

You can specify any path and name.
Note: You must use this same value when creating the Connection Factory in WebLogic as described later in this guide. For purposes of this documentation, the value is:

jms/TestConnectionFactory

Queue Location

You can choose either LOCAL or REMOTE.
Note: If the subscriber queue is created on the Transaction Server instance you should specify the value as LOCAL. If the subscriber queue is on remote WebLogic container, specify the value as REMOTE

Initial Context Factory

Enter this value:
weblogic.jndi.WLInitialContextFactory

Provider URL

Enter this value:
t3://<WLS_SERVER_HOST>:<WLS_SERVER_PORT>

Note: < WLS_SERVER_HOST > is the host of the machine where the subscriber queue is created and <WLS_SERVER_PORT> is the port at which the server is hosted.

2. Click the OK button to accept the values.

3. Run the P90702A application and find the JMSQUEUE Subscriber created in the above step.

4. Activate the JMSQUEUE Subscriber by taking this Form Exit:
Row > Change Status

5. Change the status to AV (Active).

4.3.3 Creating a JMSTOPIC Subscriber

To createa a JMSTOPIC subscriber:

1. From a JD Edwards EnterpriseOne client, run P90702A to use the Add Event Subscriber application to add a subscriber.

Field

Description

Subscriber

The Subscriber field must have a value matching valid user in JD Edwards EnterpriseOne.

Subscriber Description

Enter this value:
JMSTOPIC Subscriber

Transport Type

Enter this value:.
JMSTOPIC

Connection Factory JNDI

You can specify any path and name.
Note: You must use this same value when creating the Connection Factory in WebLogic as described later in this guide. For purposes of this documentation, the value is:

jms/TestConnectionFactory

2. Click the OK button to accept the values.

3. Run the P90702A application and find the JMSTOPIC Subscriber created in the above step.

4. Activate the JMSTOPIC Subscriber by taking this Form Exit:
Row > Change Status

5. Change the status to AV (Active).

4.3.4 Creating a Subscription

Use this procedure to create a Subscription.

1. From a JD Edwards EnterpriseOne client, run the P90702A application and find the Subscribers you created in the previous steps of this section.

2. On Event Subscribers, take the Row Exit for Event Subscriptions.

3. On Event Subscriptions, click the Add button.

4. On Add Event Subscription, complete the Subscriber Name and Subscriber Description fields with any value. In this example, the both values are JDE.

5. Click the OK button to accept the values.

6. Activate the Subscriber by taking this Form Exit:
Row > Change Status

7. Change the status to AV (Active).

4.3.5 Adding an Event to the Subscription

Use this procedure to add an Event to the Subscription.

Note:
In this example, the added event is named RTABOUT.

1. Run P90702A and find the Subscriber created in the previous step of this section.

Note:
In this documentation, that subscription was called JDE.

2. On Event Subscriptions, select the Subscribed Events Row Exit.

3. On Subscribed Events, add RTABOUT as an Event Type by clicking the radio button next to the value.

4. Click the OK button to add RTABOUT as a Subscribed Event to the Subscription.

4.3.6 Adding Environment(s) to a Subscription

Use this procedure to add an Environment to a Subscription.

1. Run P90702A and find the Subscriber you created earlier in this section of the guide.

2. On Event Subscriptions, select the Subscribed Env Row Exit.

3. On Subscribed Environments, click the radio buttons to add Environments as required.

4. Click the OK button to add the selected Environments. to the Subscription.

5 Troubleshooting Real Time Events Processing

This chapter discusses troubleshooting Real Time Events processing.

Problem: There are some events in the table F90710 which are not getting picked up by the RTE server.

Resolution: Check if the event sequence number stored in the table F90708 is greater than lowest event sequence number available in table F90710. In this case the event sequence number in table F90708 must be reset to 0 manually

Problem: Some of the clustered servers are not processing events.

Resolution: Probably some servers in the cluster are having some problem. Refer the app server log to identify the problem, rectify the problem and restart the cluster.

Resolution: There could be very high number of events processed exceeding the filestore size. It is advisable to consume events while they are being produced and processed. This keeps the filestore clean.

Problem: Getting error in the RTE Server on WAS (Failed to send committed event message: CWSIA0053E: An exception was received during the call to the method JmsSessionImpl.getTransaction (#1): javax.resource.spi.IllegalStateException: CWSJR1121E: An internal error has occurred. During the call to the method getManagedConnection the exception javax.resource.spi.ResourceAllocationException: CWSJR1028E: An internal error has occurred. The exception com.ibm.ws.sib.processor.exceptions.SIMPConnectionUnavailableException)

Resolution: One of the messaging engines is down and unable to process event. This should not be a concern since the failover service is active and event will be processed by other available messaging engines, assuming they are available.

Problem: Error message "JNDI lookup of Queue failed" seen in RTE server log.

Resolution: It is likely that the JNDI resources are not loaded yet. This error most commonly occurs when auto migration is enabled. A retry lookup feature exists which will try to lookup until successful. If the problem persists, then check the application server log

Problem: All the messages are being sent to a single queue in a cluster or not evenly distributed.

Resolution: A failover may have occurred and the Queue configuration has been changed due to failover. Stop the clustered servers, modify the configuration as stated in this document and start the cluster to process events.

6 Upgrading the Transaction Server RTE Software Component Using Server Manager

Use this procedure to upgrade the Transaction Server RTE component that was installed using Server Manager.

1. Obtain the RTE software component to which you wish to upgrade from Oracle eDelivery.

2. Place the new RTE component into this folder:
<AGENT_LOC>\components

3. Log on to the Server Manager console.

4. Click on the RTE instance.

5. In the Software Component Version section, click the Change button.

6. On the Change Tools Release layout, select the desired version to install from the component by selecting the radio button.

7. Click the Change Component button.

Note:
An upgrade of RTE server only upgrades the Transaction Server RTE component of JD Edwards, and not the JMS components.

Refer to the JD Edwards EnterpriseOne Server Manager Guide to upgrade the Server Manager Agent. You can only update the Server Manager Agent after you have upgraded the Server Manager Console to Tools Release 9.1.

7 Uninstalling the Transaction Server RTE Software Component using Server Manager

Use this procedure to uninstall the Transaction Server RTE Software Component using Server Manager.

1. Log on to the Server Manager console.

2. Click on the managed home location.

3. Select the Transaction Server Real Time Events (RTE) instance.

4. Click the Remove Instance button.

A Architecture of the Guaranteed Event System

This appendix presents an architectural diagram of the Guaranteed Event System, which is one of the JD Edwards EnterpriseOne Transaction Server Components. The diagram depicts the general sequence that occurs when an event is published. These steps correspond to the numbered sequence of events in the diagram:

1. An HTML client user executes a business function (BSFN) request.
This request is sent to the JD Edwards EnterpriseOne HTML Web Server.

2. The HTML Web Server forwards this request to a CallObject kernel on the Enterprise Server.

3. The CallObject kernel executes the BSFN, which calls the Event API to send the event data to the F90710 Event Transfer table.
If the event is a Z event, the data is sent to F90710 in a final XML format.

4. A database polling application available with the JD Edwards EnterpriseOne Transaction Server polls any available records in F90710.

5. The transaction server retrieves the event data from F90710 and (for Real-Time and XAPI events) converts the data to an XML document in the appropriate format.

6. The transaction server routes the event to the subscriber queue(s) for each subscriber that has established an active subscription for that event.

7. When a subscriber connects to the Transaction Server, the subscriber is sent all the events that exist in its subscription queue at that time.

B Creating and Configuring Multiple Transaction Servers per Environment or User/Role

The default configuration for the Transaction Server defines the F907* tables (event tables) to reside in one datasource. These tables are included in the System datasource database (for example, SY812 or SY900). Using this default configuration, only a single Transaction Server may be configured to monitor the F907* tables.

This appendix provides instructions to set up and configure multiple Transaction Servers so that transactions can be separated by one or more of these criteria:

- Environment

- Role/User

This process allows you to:

- Separate transaction events by environment so that two different transaction servers can service the events

- Use OCM mappings to point to the different environments

This appendix describes these tasks:

- Section B.1, "Creating and Configuring Multiple Transaction Servers per Environment"

- Section B.2, "Creating and Configuring Multiple Transaction Servers per Role/User"

B.1 Creating and Configuring Multiple Transaction Servers per Environment

These general guidelines apply:

- Production Environments
The F907* tables should remain in the System database as defined by the standard setup and configuration. Since the transaction server is designed to work with only one set of F907* tables, the normal procedure is to configure the transaction server with these system tables.

- Test and Dev Environments
In order to separate Test and Dev environment transactions from Production, you can copy the F907* tables into the business data database and change the OCM mappings accordingly. A second transaction server is necessary in order to access these copied tables because, by design, each Transaction Server can only work with only one set of F907* tables.

- Multiple Transaction Servers
In order to support the separation of the F907* tables per environment, you must install an additional Transaction Server per environment or environment combination. For example, if you want to isolate your Production environment and then combine your Test and Dev environments, you would need a total of two Transaction Servers. If you further wanted to separate your Test and Dev environments, you would need a total of three Transaction Servers.

Do not start any added Transaction Servers until you complete the procedure in this appendix.

To create and configure the Transaction Server per environment:

1. With the exception of the tables listed in the Exceptions below, copy all remaining F907* tables from the System database to the business data database.

Exceptions

The following tables are initially cached on JD Edwards EnterpriseOne service startup and contain the necessary information needed for all environments and subscribers. Therefore, these tables and their OCM mappings should remain in the System datasource:

- F90701

- F907011

- F90705

2. Use OCM to remap the F907* tables copied in Step 1 to the new business data database for both the system and the server map.
For example, the completed mappings might look like these:

JPY900 F90701  TBLE  System - 900 *PUBLIC AV
JPY900 F907011 TBLE  System - 900 *PUBLIC AV
JPY900 F907012 TBLE  System - 900 *PUBLIC AV
JPY900 F90703  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90704  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90705  TBLE  System - 900 *PUBLIC AV
JPY900 F90706  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90707  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F907071 TBLE  Business Data - CRP *PUBLIC AV
JPY900 F907072 TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90708  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90710  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90711  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90712  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90715  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90720  TBLE  Business Data - CRP *PUBLIC AV
JPY900 F90730  TBLE  Business Data - CRP *PUBLIC AV

3. Activate the RT* event for added environment (for example, JPY900) in P90701 by:

- Taking the Form exit to Event Activation

- Doing an Add to add the new Event per environment

- Using the Row exit to change the status to Active

4. Refresh the JD Edwards EnterpriseOne server cache by restarting the EnterpriseOne services.

5. Add subscriber information for the added environment (for example, JPY900).

6. Refresh the Transaction Server cache by restarting the transaction server.

7. Trigger the event.

8. Verify the event is recorded in the F90710 Business Data Source table.

9. From a JD Edwards EnterpriseOne client machine, use this command to run the Table Trigger script for F90710 in the business data for the added environment (for example, PY Business Data):
<home>\system\bin32\dbtemplates.exe -create

where <home> is the installation directory of the JD Edwards EnterpriseOne Administration client that is named according to the JD Edwards EnterpriseOne release. For example, E812 or E900.

10. Verify the F986112 table is populated and the new event in F90710 has the status 3 instead of 2.

B.2 Creating and Configuring Multiple Transaction Servers per Role/User

This section describes a configuration where multiple Real Time Events can be processed by multiple Transaction Server instances within the same JD Edwards EnterpriseOne environment. You can process events by Role/User to enable specific users to have their events processed by a specific Transaction Server. This setup is similar to that in the previous section, Section B.1, "Creating and Configuring Multiple Transaction Servers per Environment". Instead of separating the events by environment you are separating the Real Time Event messages by Role/User.

Multiple Transaction Servers

In order to support the separation of the F907* tables per Role/User, you must install an additional Transaction Server per User or Role combination. For example, you have set up a role for processing Sales Orders and another role for processing all other Real Time Events. In this case, you would need an additional Transaction Server for each role addition.

To configure the system to route Real Time Events to specific Transaction Servers based on the JD Edwards EnterpriseOne Role/User user that is generating the event:

1. From JD Edwards EnterpriseOne, create a new Role which will include a group of users that will initiate the Real Time Event messages.

2. Create these tables in the same environment datasource (Business Data - PROD) or create a custom Data Source (for example, TS2 / PD900):

- F90710 - Event table

- F90730 - Unique sequence table

3. Copy these tables from the System datasource to the same environment datasource you used in Step 2:

- F90706 - Event Subscriber

- F90707 - Event Subscription

- F907071 - Subscribed Events

- F907072 - Subscribed Environments

- F90708 - Event Sequence

These tables contain the subscriber information and whether they are active or not. It is important to note that when you copy these tables, whenever you want to make changes to the subscriber information you must ensure you are logged in as the appropriate user. This is required to ensure you are making changes to the correct table. If you do not copy these tables, you will continue to see errors in the Transaction Server log where events cannot be delivered to all the subscribers, although this does not affect the delivery of the events to the correct queue.

4. Create new OCM mappings for all the tables listed in Steps 2 and 3 for the new Role (for example, role associated with the PD900 environment and the copied F90710 table and the role associated with the PD900 environment and the F90730 table) to point to Business Data - PROD. You must make mappings for both SYSTEM and Server Map.

5. On a JD Edwards EnterpriseOne client machine, run the program to create the table trigger on the new F90710 table. From a command prompt, navigate to this directory:
e900\system\bin32\

6. From the above directory, run this command:
dbtemplates.exe -create

When prompted ensure you log in as the new user (assigned to your new role) so that the program uses the new OCM mappings to locate the correct table in which to create the new trigger.

Henceforth when logging in as a user defined by this role, a generated Real Time Event sends the message into the appropriate F90710 table and updates the F90730 table.

7. Install a new Transaction server that will be used to process the events for each new Role/User.

8. Configure the newly installed Transaction Server with one of the users in the new Role as the bootstrap user.

9. Process a transaction that triggers an event for the new Role.

10. Start the newly installed Transaction Server and check the queue to make sure the event was delivered to the new Transaction Server.

11. Verify the previous configuration still functions as expected by logging in as any user not belonging to the new Role and generate an Event and see that the message goes into the F90710 (System - 900) and is delivered to the original Transaction Server.

C Working with JMS Topic or JMS Queue

Based on your desired subscription model, you must choose to implement either JMS Topic or JMS Queue. You should examine these use case descriptions described in this appendix to determine whether you should use JMSTOPIC or JMSQUEUE subscription in your implementation of the Transaction Server:

- Section C.1, "Use Case for JMS Topic"

- Section C.2, "Use Case for JMS Queue"

C.1 Use Case for JMS Topic

The use case for JMS Topic includes these considerations:

- A distribution mechanism for publishing messages that are delivered to multiple subscribers.

- Multiple consumers require delivery of the message.

- There is a timing dependency between publishers and subscribers. The publisher must create a subscription in order for clients to be able to subscribe. The subscriber must remain continuously active to receive messages, unless it has established a durable subscription. In that case, messages published while the subscriber is not connected will be redistributed whenever it reconnects.

C.2 Use Case for JMS Queue

The use case for JMS Queue includes these considerations:

- A staging area that contains messages that have been sent and are waiting to be read. As the name queue suggests, the messages are delivered in the order sent. A message is removed from the queue once it has been read.

- Point-to-point solution based on Publisher/ Subscriber model.

- Only one consumer will get the message.

- The producer does not have to be running at the time the consumer consumes the message, nor does the consumer need to be running at the time the message is sent,

- Every message successfully processed is acknowledged by the consumer.

D Testing and Validating the JMSQUEUE Configuration

If you have followed the steps to activate RTABOUT, a Real Time Event will be created whenever you Add, Change, or Delete an Address Book record. However, before performing any of those functions you should follow the procedure outlined in the following documents found in My Oracle Support. Access the document according to your Tools Release.

- E1: OUTBND: RTE Server (Transaction Server) Setup and Configuration for WebLogic - JMSQueue Subscriber (Doc ID 1137704.1)

E Creating a JMS Topic in the JD Edwards EnterpriseOne Transaction Server Application

To create a JMS Topic in the Transaction Server Application:

1. Log on to the WebLogic Admin Console.

2. To create a JMS Topic for your JD Edwards EnterpriseOne, navigate to Home Page > Services > Messaging > JMS Modules, select your JMS Module and click the New button.

3. On Create a New JMS System Module Resource, select the radio button for Topic.
The process for creating the Connection Factory for this topic is the same as the JMS Connection Factory created for the queue. Ensure you use the same values as the ones used when setting up your JMSTOPIC Subscriber in P90702A.

F Creating a Subscriber JMS Queue in WebLogic Server other than Transaction Server

Although it is supported it is not recommended that you create the subscriber queue in the Transaction Server container. This section describes the recommendation, which is to create the a subscriber JMS queue on a WebLogic Server other than the Transaction Server.

This appendix describes these tasks:

- Appendix F, "Creating the JMS Server"

- Appendix F, "Creating the JMS Module"

- Appendix F, "Creating the JMS Resource"

F.1 Creating the JMS Server

To create the JMS Server:

1. From the WebLogic Administration Console, select the domain in which you want to create the JMS Server.

2. Click on YourDomain > Services > Messaging > JMS Servers

3. In the right panel click the New button.

4. On Create a New JMS Server, enter a value for the name of the JMS server to be created. In this guide, the name is Test-JMSServer.

5. Use the pulldown to select the Persistence Store.

Note:
If Persistence Store does not exist you must create a new Persistence Store by clicking the Create a New Store button.

6. Click the Next button.

7. On Create a New JMS Server, select the Weblogic server node and click the Finish button.
As shown below, at this point using the example in this guide a JMS server called Test-JMSServer is created. This Test-JMSServer is targeted to AdminServer. However this can be targeted to any other container available, which may not necessarily be AdminServer

F.2 Creating the JMS Module

To create a subscriber queue on WebLogic Server:

1. In the WebLogic Administration Console, select the domain into which you want to create the JMS Module.

2. Click on YourDomain > Services > Messaging > JMS Modules

3. In the right panel click the New button.

4. On Create JMS System Module, enter a value for the name of the JMS module to be created. In this guide, the name is Test-SystemModule.

5. Click the Next button.

6. On Create JMS System Module, select the target of Weblogic server node.

7. Click the Finish button.
As shown below at this point, using the example in this guide, the Test-SystemModule is created. This Test- SystemModule is targeted to AdminServer. However this can be targeted to any other container .

F.3 Creating the JMS Resource

Use this procedure to create a JMS resource such as connection factory, queue, or topic in the JMS Module you created in the previous section.

To create a JMS Resource:

1. Click the JMS Module where you want to create a resource (in this guide Test-SystemModule).

2. On Settings for <Module_Name> , click the New Button.

3. On Create a New JMS System Module Resource, select the radio button for the resource type to be created. In this example, Connection Factory is selected.

4. On Create a New JMS System Module Resource, enter Connection Factory name and JNDI name for this Connection Factory.

5. Click the Next button.

6. On Create a New JMS System Module Resource, use the pulldown to select the Subdeployment. If no existing Subdeployment can be used click on Create a New Subdeployment button.

7. On Create a New Subdeployment, enter a name for a new Subdeployment.

8. Click the OK button.

9. On Create a New JMS System Module Resource, click the checkbox next to the JMS Server for which you just created a resource.

10. Click the Next button.

11. On Create a New JMS System Module Resource, click the radio button for Queue.

12. Click the Next button.

13. On Create a New JMS System Module Resource, enter a I and JNDI Name for this Queue.

14. Click the Next button.

15. On Create a New JMS System Module Resource, select the Subdeployment.

16. Click the Finish button.

17. As shown below, verify that both the xxxx

G Creating an Oracle JD Edwards EnterpriseOne Service Request for Transaction Server Support

To minimize the resolution time for any Service Requests you might have to create with Global Support, it is recommended that you provide this information:

- JD Edwards EnterpriseOne Enterprise Server JDE.INI file

- Exact JD Edwards EnterpriseOne Tools Release on which you are running (for example, 9.1.1.1)

- Indicate that you are running Transaction Server on Oracle WebLogic Server and the exact release and version your application server (for example, WebLogic Server 10.3.5)

- The content of the config folder within the Transaction Server Agent where the Transaction Server instance resides

- Logs from Server Manager generated when starting the Transaction Server

Tip:
To obtain a more detailed set of logs, you can use Server Manager to enable enhanced logging. For the Log Name with a value RTE, change the Log Components value to EVENTPROCESSOR as shown below.

- Once the additional jdelog.properties definition is added as described in the preceding step, stop the Transaction Server, clear the RTE logs and produce the logs generated after going through the steps outlined in Appendix D, "Testing and Validating the JMSQUEUE Configuration".

- Description of the results obtained when running the test described in Appendix D, "Testing and Validating the JMSQUEUE Configuration"
Specifically, you should be able to provide the status of the F90710 record after the RTE is started.

H Clustering for the JD Edwards Transaction Server on WebLogic Server

This appendix discusses these topics:

- Section H.1, "Understanding WebLogic Clustering"

- Section H.2, "Creating a Cluster on WebLogic Server"

- Section H.3, "Creating the Servers"

- Section H.4, "Creating Machines"

- Section H.5, "Associate Machines with Servers"

- Section H.6, "Cluster the Servers"

- Section H.7, "Setup the Cluster for Load Balancing"

- Section H.8, "Setup the Cluster for Failover"

- Section H.9, "Installing the Transaction Server RTE Component on WebLogic Server using Server Manager"

- Section H.10, "Using JDBC Persistent Stores"

- Section H.11, "Create JDBC Datasources"

- Section H.12, "Create JDBC Persistent Stores"

- Section H.13, "Associate a JMS Server with a Persistent Store"

- Section H.14, "Additional Configuration for Using Horizontal Cluster"

H.1 Understanding WebLogic Clustering

Clustering permits the deployment of application components and services to several machines with a single face to the client. When a client requests a service, it should make no difference if the service runs on a single server or across a number of servers. The clustering abstraction provides you with a clear route to improving the performance and scalability of the applications with increased administration of hardware and network resources. WebLogic clustering provides these benefits:

- Scalability
A clustered solution allows you to create additional capacity by introducing more

servers to the cluster, thereby reducing the load on existing servers. For the JD Edwards EnterpriseOne Transaction Server with the Real Time (RTE) Application, you can add as many servers and messaging engines as you like to meet the performance requirement. The RTE application on WebLogic achieves scalability with the implementation of a messaging engine policy.

- Load balancing
The ability to distribute requests across all members of the cluster, according to the workload on each server. WebLogic handles load balancing as defined by the Load Balancing Algorithm that you configure on cluster setup. The Transaction Server with RTE on WebLogic only supports round-robin load balancing policy for the RTE application.

- High availability
A mix of features that ensure applications and services are available even if a server or machine fails. Clients can continue to work with little or no disruption in a highly available environment. RTE on WebLogic achieves high availability with the implementation of a messaging engine policy.

H.2 Creating a Cluster on WebLogic Server

For advanced configuration of the Oracle WebLogic Server refer to this link:

http://download.oracle.com/docs/cd/E15523_01/web.1111/e13709/setup.htm

The section discusses these topics:

- Creating the Servers

- Creating Machines

- Associate Machines with Servers

- Cluster the Servers

- Setup the Cluster for Load Balancing

- Setup the Cluster for Failover

H.3 Creating the Servers

1. On Summary of Servers, click the Lock and Edit button at the bottom of the page.

2. On Summary of Servers, click the New Button.

3. On Create a New Server, complete these fields:

- Server Name
Enter the name of the new server.

- Server Listen Address
Enter the IP address of the physical machine on which this instance will run.

Note:
If you want to setup a horizontal Cluster, you should create a server with the remote Server Listen Address.

- Server Listen Port
Enter a valid unused port on which this server will listen.

Note:
If you want to setup a horizontal Cluster, you should create a server with a Remote Server Listen Port.

4. On Create a New Server, with the entered values accepted, click the Finish button.

5. On Create a New Server, click the Activate Changes button at the bottom of the screen.

6. Repeat the steps this procedure for any additional servers you want to make part of the cluster.

7. If you want to setup a horizontal Cluster, you should create a server with the remote Server listen Address and Remote Server Listen Port.
When you complete this procedure, your list of server will be similar to this:

H.4 Creating Machines

Use this procedure to create the machines:

1. Click Environment > Machines > Lock & Edit.

2. On Summary of Machines, click the New button.

3. On Create a New Machine, complete these fields:

- Name
Enter the machine name of the host for this clustered server.

- Machine OS
Use the pulldown to select the operating system. Choose Other for all non-UNIX operating systems.

4. On Create a New Machine, click the OK button.

5. Click Activate Changes.

6. Repeat the steps in this procedure if your cluster spans multiple machines or if multiple server instances will run on individual machines in the cluster.
When you complete this procedure, your list of server will be similar to this:

Note:
For the Horizontal Node ensure that the listen address for the server and the machine are exactly the same. This should be the ip of the physical machine, not "localhost" or 127.0.0.1.

H.5 Associate Machines with Servers

Use this procedure to associate machines with Servers:

1. Go to Environment > Machines.

2. On Summary of Machines, click the Lock & Edit button at the bottom of the screen.

3. In the Machines list, select the machine for the vertical nodes. If setting up horizontal cluster, select the machine for the horizontal node.

4. In Settings for <machine>, click on the Servers tab.

5. In Customize this table, click the Add button.

6. On Identify Server, complete these fields:

- Check this radio button:
Select an existing server, and associate it with this machine

- Select a server:
Use the pulldown to select an existing server.

7. Repeat the steps in this procedure if your cluster spans multiple machines or if multiple server instances will run on individual machines in the cluster.

8. Click the Finish button.

9. Click the Activate Changes button.
When you complete this procedure, your list of server will be similar to this:

H.6 Cluster the Servers

Use this procedure to cluster the servers.

1. Go to Environment > Clusters.

2. On Summary of Clusters, click the Lock & Edit button at the bottom of the screen.

3. Click the New button.

4. On Cluster Properties, complete these fields:

- Name
Enter a name for the cluster.

- Messaging Mode
Use the pulldown to select Unicast.

- Unicast Broadcast Channel
Leave this field blank.

- Multicast Address
Accept the default value.

- Multicast Port
Accept the default value.

5. Click the OK button.

6. On Summary of Clusters, click on the newly-defined cluster name.

7. On Settings for <cluster>, click the Servers tab.

8. Click on the Add button.

9. Select the server.

10. Click next.

11. Repeat the preceding two steps for any additional servers.

12. Click the Activate Changes button.
When you complete this procedure, your list of server will be similar to this:

13. Restart the admin server and all node managers.

H.7 Setup the Cluster for Load Balancing

A cluster is setup with load balancing feature with round-robin algorithm by default. However the algorithm to be used can be changed based on requirement.

1. Go to click Environment > Clusters.

2. Click on the cluster name.

3. Go to General tab.

4. Click the Lock & Edit button.

5. Default Load Algorithm field contains several algorithms in the dropdown. Select the one you want to use. Different load balancing algorithms are round-robin, weight-based and random.

6. Click the Save button.

7. Click the Activate Changes button.

H.8 Setup the Cluster for Failover

A cluster is setup with load balancing feature with round-robin algorithm by default. However the algorithm to be used can be changed based on requirement.

1. Go to Environment > Clusters.

2. Click on the cluster name.

3. Go to Migration tab

4. Click the Lock & Edit button.

5. In the Candidate Machines For Migratable Servers field, move the machines Available to Choose.

6. On Settings for VC, with the Configuration tab selected, complete this field:

- Migration Basis
Use the pulldown to select Consensus.

Note:
You can also select database as Migration Basis with additional setup.

7. Click Environment, Migratable Targets.

8. Click on the migratable target.

9. Go to Migration tab.

10. On Settings for <machine> (migratable), with the Migration tab selected, complete this field:

- Server Migration Policy
Use the pulldown to select between these available policies:

- Manual Service Migration Only

- Auto-Migrate Exactly-Once Services

- Auto-Migrate Failure-Recovery Services

11. Click the Save button.

12. Click the Activate Changes button.

H.9 Installing the Transaction Server RTE Component on WebLogic Server using Server Manager

Use this procedure to install the RTE application to the cluster via Server Manager.

1. Install the JD Edwards EnterpriseOne product Server Manager on a machine with the Microsoft Windows operating system.

2. Install the Server Manager agent on the machine that is running the Oracle WebLogic Administration Console.

3. Register the WebLogic server through Server Manager.

4. Logon to the Server Manager console.

5. On Managed Homes and Managed Instances, click on the machine running the registered Oracle WebLogic Server.

6. Click the Create New Managed Instance button.

7. On Create/Register A Managed Instance, Instance Type, click this radio button:
EnterpriseOne Transaction Server

8. Click the Continue button.

9. On Create/Register A Managed Instance, Instance Properties, complete the fields:

- Server Group
Accept the default value.

- Instance Name
Enter an instance name.

- J2EE Server/Cluster
Use the pulldown to select the Oracle WebLogic cluster.

- HTTP Port
Accept the auto populated value.

Note:
You should not manually change this value.

- Software Component
Use the pulldown to select a valid JD Edwards RTE application software component for your installation.

10. Click the Continue button.

11. On Create/Register A Managed Instance, Confirmation, complete these fields:

- Bootstrap User
Enter any value that you will use for this user.

- Bootstrap User Password
Enter a password.

- Bootstrap Role
Enter the JD Edwards EnterpriseOne role for the bootstrap user. For example, *ALL is a valid role.

- Sequencing Behavior
Use the pulldown to select the desired behavior.

- Processing Concurrency
Use the pulldown to select the desired processing concurrency value. This defines the number of concurrent event processing threads to run.

- WebSphereMQ Initial Root
Leave this value blank; it is not applicable to WebLogic installations.

12. Click the Continue button.

13. On Create/Register A Managed Instance, Finish, click the Create Instance button.

Server Manager displays a processing message.

The instance screen for the RTE application displays.

Caution:
Do not attempt to start the instance at this time. You must continue with the setup instructions in this guide until you are explicitly instructed to start the instance.

14. In the Configuration section, click Network Settings and complete the fields as applicable for your environment.

15. In the Configuration section, click JDBJ Database Configuration and complete the fields as applicable for your environment.

16. In the Configuration section, click Event Processor Configuration settings and confirm the fields are valid for your installation.

Caution:
Do not attempt to start the instance at this time. You must continue with the setup instructions in this guide until you are explicitly instructed to start the instance.

H.10 Using JDBC Persistent Stores

Follow the steps below to modify the installed configuration for using JDBC Persistent Stores instead of FileStore. In order to use horizontal clusters, it is mandatory to use JDBC Persistent Stores for JMS Servers.

Caution:
Do not attempt to start the Transaction Server RTE instance or any other managed servers at this time. You must continue with the setup instructions in this guide until you are explicitly instructed to start an instance or managed server.

These instructions assume that you've already created a database to serve as a persistent store.

This chapter discusses these topics:

- Section H.11, "Create JDBC Datasources"

- Section H.12, "Create JDBC Persistent Stores"

- Section H.13, "Associate a JMS Server with a Persistent Store"

H.11 Create JDBC Datasources

Use this procedure to create JDBC Datasources.

1. Logon to the WebLogic Administration Console.

2. Go to Services > Data Sources.

3. On Summary of JDBC Data Sources, click the Lock & Edit button.

4. On Summary of JDBC Data Sources, in the Customize this table section, use the New pulldown to select Generic Data Source.

5. On Create a New JDBC Data Source, JDBC Data Source Properties, complete these fields:

- Name
Enter a name for the JDBC data source.

- JNDI Name
Enter a name for the JNDI.

- Database Type
Use the pulldown to select your database type.

6. Click the Next button.

7. On Create a New JDBC Data Source, use the pulldown to select the driver appropriate for your database.

Note:
For Oracle databases, you must select the thin driver. You cannot use an XA driver.

8. Click the Next button.

9. On Create a New JDBC Data Source, Transaction Options, deselect this checkbox:
Supports Global Transactions

10. Click the Next button.

11. On Create a New JDBC Data Source, Connection Properties, complete these fields:

- Database Name
Enter a name for the database to which you want to connect.

- Host Name
Enter the name or IP address of the database server.

- Port
Enter the port on the database server which is used to connect.

- Database User Name
Enter the database account you want to use to create the database connections.

- Password
Enter the database account password to use to create database connections.

- Confirm Password
Confirm the database account password.

12. Click the Next button.

13. On Create a New JDBC Data Source, Test Database Connection, click the Test Configuration button.

14. Ensure you receive this message: connection test succeeded

15. Click the Next button.

16. On Summary of JDBC Data Sources, in the list of Data Sources (Filtered - More Columns Exist), select the checkboxes for all servers in the cluster.

17. Click the Finish button at the bottom of the page.

18. Repeat the applicable steps in this procedure to add additional JDBC data sources.

19. Click Activate changes.

H.12 Create JDBC Persistent Stores

Server Manager deploys the RTE solution with file persistent stores already created. This works for vertical clusters, but should be changed to JDBC type persistent stores for horizontal clusters.

Use this procedure to create the necessary JDBC persistent stores.

1. Go to Services > Persistent Stores.

2. On Summary of Persistent Stores, click the Lock & Edit Button.

3. On Summary of Persistent Stores, in the Customize this table section, click the New pulldown and on the flyout choose Create JDBCStore.

4. On Settings for JDBCStore, complete these fields:

- Name
Enter a name for the JDBC store. The name must be unique within the WebLogic Server instance or its cluster.

- Target
Use the pulldown to select the migratable server. The list will show of all WebLogic Server instances that have been defined in the current domain and are therefore candidates for hosting this JDBC store.

- Data Source
Use the pulldown to select the JDBC data source used by this JDBC store to access its backing table.

Caution:
The list will only show JDBC datasources that:

- Do not use global transactions.

- Do not use a non XA JDBC driver.

- Are not configured to enable Logging Last Resource

- Are not configured to Emulate Two-Phase Commit

- Prefix Name
Leave this field blank.

5. Click the Save button.

6. Click the OK button.

7. Repeat the applicable steps to add additional persistent stores for additional JMS servers.

8. Click the Activate Changes button.
When you complete this procedure, your list of server will be similar to this:

H.13 Associate a JMS Server with a Persistent Store

Server Manager by default associates the JMS Servers with file persistent stores. For using JDBC store or using horizontal cluster, you must associate the JMS Servers with JDBC persistent stores.

Use this procedure to associate a JMS Server with a persistent store:

1. Go to Services > Messaging > JMS Servers.

2. On Summary of JMS Server, click the Lock & Edit button at the bottom of the page.

3. On Summary of JMS Server, in the JMS Servers (Filtered - More Columsn Exist), click on the JMS Server that you want to associate with a persistent store.

4. Click on the General Tab and complete these fields:

- Persistent Store
Use the pulldown to select the JDBC Store to which you want to associate.

- Paging Directory
Accept the default value.

- Message Buffer Size
Accept the default value.

- Hosting Temporary Destinations
Ensure the checkbox for this option is selected.

- Module Containing Temporary Templates
Accept the default value.

- Temporary Template Name
Accept the default value.

- Expiration Scan Interval
Accept the default value.

5. Click the Save button.

6. Click the Activate Changes button.

7. Repeat the applicable steps to add JMS Servers and persistent stores.
When you complete this procedure, your list of server will be similar to this:

H.14 Additional Configuration for Using Horizontal Cluster

Server Manager creates the necessary file structure on the node that the WebLogic Administration Console resides on. However, for any horizontal cluster nodes, these files should be transferred manually. On Windows Machines, this should be done through Windows Explorer. For Unix or Linux machines, this should be done through FTP. The steps below use Linux/FTP as an example.

1. Use these steps to determine where the RTE installation is looking for the requisite ini files:

1. Go to Servers > Server_Name.

2. Click on the Server Start tab.

3. In the Arguments section, note the -Ddefault_path structure.
For example, in the above example the structure is:

/u01/JDEdwards/JDE_AGENT/targets/RTEInst/config

This is the directory that is created on the horizontal node and where the necessary files must be copied.

4. On the target machine, you must pre-create the necessary directory structure.
For example:

5. Copy the config files from the vertical node machine to the horizontal node machine.
In the below example, the vertical node machine is dendell03 and the horizontal node machine is dnhpbl12.

Note:
If you are using UNIX or Linux machines, ensure you have the correct permissions for the new directory. For example:
chmod 777 -R JDEdwards

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2018, Oracle and/or its affiliates. All rights reserved.

License Restrictions Warranty/Consequential Damages Disclaimer

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Warranty Disclaimer

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

Restricted Rights Notice

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

Hazardous Applications Notice

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Trademark Notice

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

Third-Party Content, Products, and Services Disclaimer

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

Pre-General Availability Draft Documentation Notice

If this document is in public or private pre-General Availability status:

This documentation is in pre-General Availability status and is intended for demonstration and preliminary use only. It may not be specific to the hardware on which you are using the software. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to this documentation and will not be responsible for any loss, costs, or damages incurred due to the use of this documentation.

Private Pre-General Availability Draft Documentation Notice

If this document is in private pre-General Availability status:

The information contained in this document is for informational sharing purposes only and should be considered in your capacity as a customer advisory board member or pursuant to your pre-General Availability trial agreement only. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described in this document remains at the sole discretion of Oracle.

This document in any form, software or printed matter, contains proprietary information that is the exclusive property of Oracle. Your access to and use of this confidential material is subject to the terms and conditions of your Oracle Master Agreement, Oracle License and Services Agreement, Oracle PartnerNetwork Agreement, Oracle distribution agreement, or other license agreement which has been executed by you and Oracle and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced, or distributed to anyone outside Oracle without prior written consent of Oracle. This document is not part of your license agreement nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.