Using Guaranteed Events

This chapter provides an overview of JD Edwards EnterpriseOne events and discusses how to:

Note. This chapter is applicable only if you use guaranteed events delivery. Guaranteed event delivery is available when you use JD Edwards EnterpriseOne Tools 8.94 with JD Edwards EnterpriseOne Applications 8.11 or JD Edwards EnterpriseOne Tools 8.95 and later Tools releases with JD Edwards EnterpriseOne Applications 8.9, 8.10, 8.11, and later Applications releases.

Refer to the Classic Events chapters if you use JD Edwards EnterpriseOne Tools 8.93 or earlier releases, or if you use JD Edwards EnterpriseOne Tools 8.94 with JD Edwards EnterpriseOne Applications 8.10 or 8.9.

Click to jump to parent topicUnderstanding Guaranteed Events

Oracle JD Edwards EnterpriseOne event functionality provides an infrastructure that can capture JD Edwards EnterpriseOne transactions in various ways and provide real-time notification to third-party software, end users, and other Oracle systems, such as Web Services Gateway (WSG) and Customer Relationship Management (CRM).

JD Edwards EnterpriseOne notifications are called events. The JD Edwards EnterpriseOne event system implements a publish and subscribe model. Events are delivered to subscribers in XML documents that contain detailed information about the event. For example, when a sales order is entered into the system, the sales order information can be automatically sent to a CRM or supply chain management (SCM) application for further processing. If your system is IBM, you can use the WebSphere MQ messaging system to receive events. If your system is Microsoft, you can use the MSMQ messaging system to receive events. WebSphere MQ and MSMQ provide a point-to-point interface with JD Edwards EnterpriseOne.

JD Edwards EnterpriseOne supports these three kinds of events:

Event Category

Purpose

Generation Mechanism

Response Capability

Real-Time Event

Provides requested notification to third-party software, end-users, and other Oracle systems when certain transactions occur.

System calls

No

XAPI Event

Provides requested notification to third-party software, end-users, and other Oracle systems when certain transactions occur and to provide a response.

System calls

Yes

Z Event

Provides requested notification to third-party software, end-users, and other Oracle systems when certain transactions occur.

Interface tables and system calls

No

Click to jump to parent topicProcessing Guaranteed Events

This section provides an overview of the architecture for processing events and discusses:

Click to jump to parent topicUnderstanding Guaranteed Events Processing

This diagram provides an overview of the JD Edwards EnterpriseOne events architecture:

Guaranteed Events architecture overview

In summary, this is the general sequence that happens for an event to be published:

  1. An HTML client user executes a business function request that is sent to the JD Edwards EnterpriseOne Web server.

  2. The request is forwarded to a CallObject kernel on the JD Edwards EnterpriseOne server.

  3. The CallObject kernel executes the business function, which calls the Event API to send the event data to the F90710 table.

    If the event is a Z event, the data sent to the F90710 table is in its final XML format.

  4. A trigger message is sent to the JD Edwards EnterpriseOne Transaction server that indicates that a new event is in the F90710 table.

  5. The transaction server retrieves the event data from the F90710 table and, for real-time and XAPI events, converts the event data to an XML document in the appropriate format

  6. The transaction server routes the event to the subscriber queues and subscriber topics for each subscriber that has established an active subscription for that event.

  7. When a subscriber connects to the transaction server, the subscriber receives all the events that exist in its subscription queue and subscription topic at that time.

Note. XAPI and Z events require additional information for event processing, which is discussed in the respective XAPI and Z event chapters.

Click to jump to top of pageClick to jump to parent topicAggregating Events

Events are classified as either a single event or a container event. A single event can contain a single data structure. A container event can contain one or more single events or one or more data structures. You cannot define a container event using both single events and data structures for that specific container event. For example, RTSOHDR and RTSODTL are usually defined as single real-time events that represent the data structures in the header and detail areas of a sales order. RTSOOUT is usually defined as a container real-time event that contains both RTSOHDR and RTSODTL.

Click to jump to top of pageClick to jump to parent topicLogging Events

Real-time and XAPI events do not exist in their XML form until they are processed by the transaction server. Therefore, it is not possible to log the XML event on the JD Edwards EnterpriseOne server. However, if debugging is selected, the debug log file for the CallObject kernel that generates the event displays jdeIEO_EventFinalize called for XX, where XX is an integer that represents the number of times that jdeIEO_EventFinalize has been called in that kernel.

If you select debug logging for the transaction server, the transaction server debug log file displays this messageSending event: followed by the event data, including the full XML content of the event when the transaction server processes an event. There is one of these messages for every active subscriber that has an active subscription to the event.

Warning! When logging is selected for the Transaction server, be sure to remove global read access rights for the logging directory to ensure data privacy.

If you use the dynamic Java connector graphical subscription application, you have the capability of sending the XML content of all received events to a specified directory.

See Understanding Java Connector Events.

Click to jump to top of pageClick to jump to parent topicConfiguring the Transaction Server

The transaction server uses Java Message Service (JMS) queues and topics to guarantee event delivery. When an event occurs in JD Edwards EnterpriseOne, the transaction server retrieves the event information and routes the information to subscriber JMS queues and topics for each subscriber that has established an active subscription for that event.

When you use JD Edwards EnterpriseOne Tools 8.94 with JD Edwards EnterpriseOne Applications 8.11, you must configure these settings in the jde.ini file on your enterprise server so that the transaction server can find the event system:

Note. When you install the transaction server components, host and port information is written to a readme.txt file that is typically located at c:\Program Files\JD Edwards\E1TranSvr\EventProcessor on the transaction server.

See JD Edwards EnterpriseOne Tools Release 8.97 Server Manager Guide on Oracle | PeopleSoft Customer Connection

See JD Edwards EnterpriseOne Tools Release 8.97 Transaction Server Reference Guide on Oracle | PeopleSoft Customer Connection

When you use JD Edwards EnterpriseOne Tools 8.95 or a later Tools release with JD Edwards EnterpriseOne Applications 8.9, 8.10, 8.11, or a later JD Edwards EnterpriseOne Applications release, you must configure the Object Configuration Manager (OCM) so that the transaction server can find the event system. You must access OCM from the Interoperability Event Definition program (P90701A).

Note. The ptf.log file contains Transaction server version information. The ptf.log file is located in EventProcessor_WAR.war and JDENETServer_WAR.war.

Click to jump to parent topicSetting Up OCM for Guaranteed Events

This section provides an overview of setting up OCM for guaranteed events and discusses how to set up OCM.

Click to jump to top of pageClick to jump to parent topicUnderstanding OCM Setup for Guaranteed Event Delivery

When you use JD Edwards EnterpriseOne Tools 8.95 and later releases with JD Edwards EnterpriseOne Applications 8.9 and later releases, you must define the transaction server and transaction server port settings in OCM so that the transaction server can find the event system. You use the must access OCM from the Interoperability Event Definition program (P90701A). Once you access OCM from the Interoperability Event Definition program, you much select the appropriate machine name and data source combination. This information should already be set up. If it is not, check with your System Administrator or refer to the Configurable Network Computing Implementation Guide for information about setting up the OCM.

Click to jump to top of pageClick to jump to parent topicForms Used to Set Up OCM for Guaranteed Event Delivery

Form Name

FormID

Navigation

Usage

Event Definition Workbench

W90701AA

Enter P90701A in the Fast Path Command Line.

Configure the OCM so the transaction server can find the event system.

Machine Search and Select

W986110D

From the Form menu on Event Definition Workbench, select Configure Servers.

Select the appropriate machine name and data source combination.

Work with Service Configurations

W986110J

On Machine Search and Select, select the machine name and data source combination and then click Select.

Find and select an existing configuration for the transaction server and server port or to access the Work with Service Configurations form to add a new configuration record for your transaction server.

Service Configuration Revisions

W986110K

On Work with Service Configurations, click Add.

Configure the OCM with the J2EE Transaction server and port.

Click to jump to top of pageClick to jump to parent topicSetting Up the OCM for Guaranteed Event Delivery

Access the Service Configuration Revisions form.

Environment Name

A name that uniquely identifies the environment.

Service Name

A name that identifies the type of server. For example, RTE identifies the Transaction server.

User / Role

A profile that classifies users into groups for system security purposes. Use group profiles to give the members of a group access to specific programs.

Server

The name of the Transaction server.

Port

The port number of the Transaction server. This is the JDENET listening port.

Click to jump to parent topicSelecting the Guaranteed Events Delivery System

This section provides an overview of selecting the Guaranteed Events Delivery system and discusses how to select guaranteed events delivery.

Click to jump to top of pageClick to jump to parent topicUnderstanding Guaranteed Events Selection

JD Edwards EnterpriseOne Tools software is delivered with this functionality deselected. You perform this task only if you use JD Edwards EnterpriseOne Tools 8.95 with JD Edwards EnterpriseOne Tools 8.9 or 8.10, and you want guaranteed event delivery. Typically this task is performed by a system administrator. Use the Activate/Deactivate Guaranteed Event Delivery program (P90701A) to select or deselect the Guaranteed Events Delivery system.

Warning! Perform this task only if you use JD Edwards EnterpriseOne Tools 8.95 with JD Edwards EnterpriseOne Applications 8.9 or 8.10, and you want to use the Guaranteed Event Delivery system.

When you use JD Edwards EnterpriseOne Tools 8.95 and later tools releases with JD Edwards EnterpriseOne Applications 8.11 and later applications releases, the Guaranteed Event Delivery system is automatically available, and you do not perform this task. You are ready to define your events.

If you use JD Edwards EnterpriseOne Tools 8.95 with JD Edwards EnterpriseOne Tools 8.10 or 8.9 and do not perform this task, your events will be generated using the Classic Event Delivery System.

See Understanding Classic Events.

Click to jump to top of pageClick to jump to parent topicForms Used to Select Guaranteed Events Delivery System

Form Name

FormID

Navigation

Usage

Event Definition Workbench

W90701AA

Type P90701A on the Fast Path.

Locate and review existing single and container events.

Activate Guaranteed Delivery

W90701AK

On Event Definition Workbench, select Guaranteed Events from the Form menu.

To select or deselect Guaranteed Events Delivery.

Click to jump to top of pageClick to jump to parent topicSelecting Guaranteed Events Delivery

Access the Activate Guaranteed Delivery form.

Activate Guaranteed Delivery

An option that enables you to select the Guaranteed Event Delivery system when you use JD Edwards EnterpriseOne Tools 8.95 with JD Edwards EnterpriseOne Applications 8.10 or 8.9.

Click to jump to parent topicDefining Events

This section provides an overview of entering events in the F90701 table and discusses how to define and activate single and container events.

Click to jump to top of pageClick to jump to parent topicUnderstanding Events Definition

You use the Interoperability Event Definition program (P90701A) to define each real-time and XAPI event in JD Edwards EnterpriseOne. You use a separate process to define Z events, which is documented in the Guaranteed Z Events chapter.

Every real-time or XAPI event that you use in your system must have an associated record in the F90705 table. The F90705 table enables each event to be activated or deactivated for each environment in your system. When you create a new event, select the Create Activation Record option. When you add a new environment to your system, you must run the Populate Event Activation Status Table UBE (R90705) to create event activation records for existing events. The Populate Event Activation Status Table UBE is described in the JD Edwards EnterpriseOne Server Installation Guide.

After you define a new event, you must refresh the cache of active events on the transaction server. You can refresh the active events cache while the transaction server is running. If the transaction server is not running when this operation is performed, it automatically refreshes its cache when it is brought back to operational status.

See Also

Understanding Z Events - Guaranteed

Click to jump to top of pageClick to jump to parent topicForms Used to Enter Events

Form Name

FormID

Navigation

Usage

Event Definition Workbench

W90701AA

Type P90701A on the Fast Path.

Locate and review existing single and container events.

Event Entry

W90701AD

On Event Definition Workbench, click Add.

Add or change a single or container event.

Event Definition Detail

W90701AC

Automatically appears when you click OK on the Event Entry form if you entered Container in the Event Category field for a real-time event or if you entered XAPI in the Event Type field.

Link single events or data structures to a container event.

Event Activation by Environment

W90701AG

On Event Definition Workbench, select Event Activation from the Form menu.

Locate and review existing environments and event types.

Add Event Activation by Environment

W90701AH

On Event Activation by Environment, click Add.

To activate an event on a specific environment.

Click to jump to top of pageClick to jump to parent topicAdding a Single or Container Event

Access the Event Entry form.

Event Type

The name of the event (for example RTSOOUT, which is the usual event type for a real-time sales order event).

Create Activation Records

An option that causes newly defined events to have an associated record in the F90705 table, which enables each event to be activated or deactivated for each environment in your system. You must select this option for every event that you intend to use in your system.

Event Description

The description of an event.

Event Category

A value that represents the name of the event type. Use RTE for real-time events or XAPI for XAPI events.

Event Aggregate

Indicates whether an event is a single event or a container event.

Product Code

An optional field that indicates to which JD Edwards EnterpriseOne system the event is associated.

Data Structure

The name of the data structure that passes event information.

This field disappears if Container is the value of the Event Aggregate field; however, when you click OK, the Event Definition Detail form automatically appears for you to enter data structure information.

Event Definition Detail

Access the Event Definition Detail form.

Event Data

An option that enables you to define single individual events for a container event.

Data Structure Data

An option that enables you to define aggregate events for the container event. For XAPI events, you must select the Data Structure Data option.

Activating an Event

Access the Add Event Activation by Environment form

Environment

Your operating environment, such as Windows 2000, Windows NT, UNIX, iSeries, and so on.

Refreshing the Transaction server cache of active events

Access the Event Definition Workbench form.

To refresh the cache of active events with the Transaction server running, select Refresh Event Cache from the Form menu.

Click to jump to parent topicEstablishing Subscriber and Subscription Information

This section provides an overview of subscriber and subscription information and discusses how to:

Click to jump to top of pageClick to jump to parent topicUnderstanding Subscribers and Subscriptions

You use the Interoperability Event Subscription program (P90702A) to establish subscribers and to add subscriptions. After you add a subscriber, you must activate it. If your subscriber is inactive, you will not receive any events even if you have active subscriptions. You activate subscribers on the Event Subscribers form by selecting the subscriber, and then selecting Change Status from the Row menu.

Each subscriber can have one or more subscriptions. Each subscription can be associated with one or more subscribed events and subscribed environments. Each subscription that you want to use must be activated. You activate subscriptions on the Event Subscriptions form by selecting the subscription, and then selecting Change Status from the Row menu.

Any time you make a change to a subscriber, including the associated subscriptions, you must refresh the subscriber cache on the JD Edwards EnterpriseOne and the Transaction servers for the changes to become effective. You can refresh your running system from the Event Subscribers form by selecting Refresh Sub Cache from the Form menu.

Oracle's Enterprise Service Bus (ESB) is a subscriber that uses the JMS Queue and JMS Topics transports. You can set up processing options for JMS Queue so that when you add JMS Queue as a new subscriber, the values for the Initial Context Factory and Provider URL fields are entered by the system.

Click to jump to top of pageClick to jump to parent topicForms Used to Add a Subscriber and Subscription Information

Form Name

FormID

Navigation

Usage

Event Subscribers

W90702AA

Type P90702A on the Fast Path.

Locate and review existing subscribers.

Add Event Subscriber

W90702AB

On Event Subscribers, click Add.

Add or change a subscriber.

Event Subscriptions

W90702AD

Select a subscriber in the detail area of the Event Subscribers form, and then select Event Subscriptions from the Row menu.

Locate and review existing subscriptions for a subscriber.

Add Event Subscription

W90702AE

On Event Subscriptions, click Add.

Add new subscription information.

Subscribed Events

W90702AG

On the Event Subscriptions form, select the subscription information in the detail area, and then select Subscribed Events from the Row menu.

Associate a subscription with an event.

Subscribed Environments

W90702AF

On the Event Subscriptions form, select the subscription information in the detail area, and then select Subscribed Env from the Row menu.

Associate a subscription with an environment.

Click to jump to top of pageClick to jump to parent topicSetting Up Processing Options for Adding JMS Queue as a Subscriber

Access the Interactive Versions form on JD Edwards EnterpriseOne by typing IV in the Fast path. Use these processing options to define values for adding JMS Queue as a subscriber.

Oracle Application Server Initial Context Factory

Use this processing option to specify the value for the Initial Context Factory field that appears on the Add Event Subscriber form. The value you enter in this processing option appears in the Add Event Subscriber form when the Application Server is defined as Oracle. The default value is com.evermind.server.rmi.RMIInitialContextFactory.

Oracle Application Server Local Provider URL

Use this processing option to specify the value for the Provider URL field that appears on the Add Event Subscriber form. The value you enter in this processing option appears in the Add Event Subscriber form when the Application Server is defined as Oracle and the Queue Location is defined as Local. The default value is ormi://localhost:23791.

Oracle Application Server Remote Provider URL

Use this processing option to specify the value for the Provider URL field that appears on the Add Event Subscriber form. The value you enter in this processing option appears in the Add Event Subscriber form when the Application Server is defined as Oracle and the Queue Location is defined as Remote. The default value is ormi://remote-machine-name:23791.

Websphere Initial Context Factory

Use this processing option to specify the value for the Initial Context Factory field that appears on the Add Event Subscriber form. The value you enter in this processing option appears in the Add Event Subscriber form when the Application Server is defined as WebSphere. The default value is com.ibm.websphere.naming.WsnInitialContextFactory.

Websphere Local Provider URL

Use this processing option to specify the value for the Provider URL field that appears on the Add Event Subscriber form. The value you enter in this processing option appears in the Add Event Subscriber form when the Application Server is defined as WebSphere and the Queue Location is defined as Local. The default value is corbaloc:iiop:localhost:2809.

Websphere Remote Provider URL

Use this processing option to specify the value for the Provider URL field that appears on the Add Event Subscriber form. The value you enter in this processing option appears in the Add Event Subscriber form when the Application Server is defined as WebSphere and the Queue Location is defined as Remote. The default value is corbaloc:remote-machine-name:2809.

Click to jump to top of pageClick to jump to parent topicAdding a Subscriber

Access the Add Event Subscriber form.

Subscriber

The JD Edwards EnterpriseOne user ID for the user who is to receive the subscribed events.

Subscriber Description

A description of the subscriber.

Transport Type

Describes through which mechanism the subscriber receives events. Valid transport types are:

  • COMCONN: COM Connector

  • JAVACONN: Java Connector (including WSG)

  • JDENET: For XAPI requests

    Additional fields appear on the Add Event Subscriber form. In the Host Name field, enter the name of the server that processes events for the subscriber. In the Port Number field, enter the port where the subscriber service is running. In the Connection Timeout field, enter the time in milliseconds after which the event connection is considered timed out.

  • JMSTOPIC: JMS Topic

    Additional fields appear on the Add Event Subscriber form. In the Connection Factory JNDI field, enter the JMS Topic Connection Factory JNDI name. In the Topic Name field, enter the JMS Topic name for your subscriber.

    Important! The values that you enter in the Connection Factory JNDI Name field and the Topic Name field must be the same values that you configured on the WebSphere Application Server

    See JD Edwards EnterpriseOne Tools Release 8.97 Transaction Server Reference Guide on Oracle | PeopleSoft Customer Connection

  • JMSQUEUE: JMS Queue

    These additional fields appear on the Add Subscriber Event form.
    In the Connection Factory JNDI field, select the JMS Queue Connection Factory JNDI name from the drop-down list.
    In the Queue Name field, select JMSQUEUE from the drop-down list.
    Verify the value in the Message Format field is correct.
    Verify the value in the Application Server field is correct – this entry affects the value that system enters in the Initial Context Factory field and the Provider URL field.
    In the Queue Location field, select the appropriate value from the drop-down list. User Local if the queue and the transaction server are on the same application server. Use Remote if the queue and the transaction server are on different applications servers.
    After you enter the value in the Queue Location field, the system updates the Initial Context Factory field and Provider URL field. You can change these values.

    Important! The values that you enter in the Connection Factory JNDI Name field must be the same value that you configured on the Oracle Application Server or WebSphere Application Server

    See JD Edwards EnterpriseOne Tools Release 8.97 Transaction Server Reference Guide on Oracle | PeopleSoft Customer Connection

  • MQSQ: IBM MQSeries

    Additional fields appear on the Add Subscriber Event form. In the Connection Factory JNDI field, enter the WebSphere MQ Connection Factory JNDI name. In the Queue Name field, enter the WebSphere MQ queue name for your subscriber

    See Creating WebSphere MQ Queues.

  • MSMQ: Microsoft Message Queue

    Additional fields appear on the Add Subscriber Event form. In the Queue Label field, enter the MSMQ Queue Label. In the Queue Name field, enter the MSMQ Queue Name

Click to jump to top of pageClick to jump to parent topicAdding a Subscription

Access the Add Event Subscription form.

Subscriber

The JD Edwards EnterpriseOne user ID for the user who is to receive the subscribed events.

Subscription Name

A unique name for the subscription.

Subscription Description

A description of the subscription.

Click to jump to top of pageClick to jump to parent topicAssociating a Subscription with Subscribed Events

Access the Subscribed Events form .

Event Type

The name of the event.

Click to jump to top of pageClick to jump to parent topicAssociating a Subscription with Subscribed Environments

Access the Subscribed Environments form.

Environment

The JD Edwards EnterpriseOne environment with which the subscription is associated. Each subscription can be associated with any number of valid environments.

Click to jump to parent topicCreating MSMQ Queues

This section provides an overview about MSMQ and discusses:

Click to jump to top of pageClick to jump to parent topicPrerequisites

Before you complete this task:

Click to jump to top of pageClick to jump to parent topicUnderstanding MSMQ

You can use Microsoft message queueing to subscribe to and receive events. After you create the events queue for MSMQ, you must add the queue name as a subscriber, using the Interoperability Event Subscription program (P90702A). The queue name must be in MSMQ direct format, which includes your machine name or IP address, depending on which protocol you use. Naming conventions for MSMQ direct format queue names are discussed on Microsoft's web page.

After you create the queue and set up the subscriber information, you should verify event delivery. MSMQ RTEII, a server-only feature, is an extension of COMConnector.

See Also

Microsoft Message Queuing,http://www.microsoft.com/windowsserver2003/technologies/msmq/default.mspx

Click to jump to top of pageClick to jump to parent topicCreating an MSMQ Real-Time Event Queue

Use these steps to configure MSMQ:

  1. From the Control Panel, select Administrative Tools, and then select Computer Manage.

  2. On the Computer Management Console, navigate to Services and Applications, and then open Message Queuing.

  3. Open Private Queue, right-click the Private Queue folder, select New, and then Private Queue.

    Note. You can create the events queue under Public Queue if you prefer. These steps apply to creating the events queue regardless of whether you create it in the Private Queue folder or the Public Queue folder.

  4. In Queue Name, select a meaningful queue name, for example, RTE-TEST.

  5. If the events queue is used in a transactional environment, select the Transactional option, and then click OK.

    Your new queue appears in the Private or Public Queue folder.

  6. Right-click your newly created events queue and select properties.

  7. In the Label field, enter a meaningful queue label name; for example, E1Outbound, and then click OK.

Click to jump to top of pageClick to jump to parent topicVerifying Event Delivery

Use these steps to verify event delivery:

  1. Start your COMConnector on your enterprise server.

    Note. Do not start your COMConnector on your client.

  2. On your enterprise server, in MSMQ Computer Management, select the queue that you configured to receive JD Edwards EnterpriseOne events.

  3. To see if any events are in the queue, click the queue messages under queue name and select Action then Refresh in the Computer Management menu.

  4. Double-click any messages that are in the queue.

    A menu displays the message content up to the first 256 bytes.

Click to jump to parent topicCreating WebSphere MQ Queues

This section provides an overview about WebSphere MQ and discusses:

Click to jump to top of pageClick to jump to parent topicPrerequisites

Before you complete this task:

Click to jump to top of pageClick to jump to parent topicUnderstanding WebSphere MQ

You can use IBM's message queueing to subscribe to and receive events. After you create the events queue for WebSphere MQ, you must add the queue name as a subscriber, using the Interoperability Event Subscription program (P90702A).

After you create the queue and set up the subscriber information, you should verify event delivery.

Click to jump to top of pageClick to jump to parent topicCreating a WebSphere MQ Real-Time Event Queue

Use these steps to configure WebSphere MQ:

  1. Open the WebSphere MQ Explorer and navigate to the Queue Manager

    The default queue manager is typically named QM_<hostname>, where <hostname> is the machine name where WebSphere MQ is installed.

    Note. If the QM_<hostname> queue is not created, then manually create the queue. Right-click Queue Managers, select New, and then select Queue Manager. Complete the data fields on each successive screen.

  2. Under Queue Manager, select the Queues folder.

    This shows any existing queues hosted by this queue manager.

  3. To create the queue for delivery of JD Edwards EnterpriseOne events, select New then Local Queue from the Action menu on the WebSphere MQ Explorer.

    Note. On Create Local Queue, enter a meaningful queue name, for example, RTE_TEST_QUEUE.

  4. To make the queue persistent, select the Persistent option for the Default Persistence field.

    The default settings should be sufficient for the remaining configuration values.

Important! When entering queue names for IBM Websphere MQ, the queue name must be all upper case.

Click to jump to top of pageClick to jump to parent topicConfiguring WebSphere

Use these steps to configure WebSphere:

  1. Log on to the WebSphere Administration Console.

  2. Create a Queue Connection Factory by selecting WebSphere MQ JMS Provider under Resources.

    Enter a meaningful connection factory name along with a JNDI name; for example, jms/mq/rte/QueueConnectionFactory.

    Note. When you add a WebSphere MQ subscriber in JD Edwards EnterpriseOne, enter this name in the Connection Factory JNDI field.

  3. Create a queue destination by selecting WebSphere MQ JMS Provider under Resources.

    1. In the Name and Base Queue Name field, enter the same queue name that you used when you created the queue in the WebSphere MQ Explorer; for example RTE_TEST_QUEUE.

    2. Enter a meaningful JNDI name; for example, jms/mq/rte/TestQueue01.

      Note. When you add a WebSphere MQ subscriber in JD Edwards EnterpriseOne, enter this name in the Queue Name field.

    3. Enter the Queue Manager name; for example, QM_DENNF13.

  4. Save these changes in the WebSphere console.

Click to jump to top of pageClick to jump to parent topicVerifying Event Delivery

Use these steps to verify event delivery:

  1. In the WebSphere MQ Explorer, select the queue you configured to receive JD Edwards EnterpriseOne events.

    Note. To see if any events are in the queue, click the refresh button on the Explorer window. The Current Depth column shows the number of messages in the queue. You might have to scroll right in the explorer window to see this column.

  2. If there are messages in the queue, right-click the queue.

  3. To see the messages in the queue, select Browse Messages in the pop-up menu.

    Note. JD Edwards EnterpriseOne sends the event XML to an WebSphere MQ queue, not the serialized object sent to subscriber queues serviced by the Java connector.

Click to jump to parent topicCreating a Custom Real-Time Event

JD Edwards EnterpriseOne provides predefined real-time events that capture certain JD Edwards EnterpriseOne transactions and notify subscribers about the transaction. If you have requirements that are not satisfied by the predefined real-time events, you can create a custom real-time event. Chapter 14, Using Real-time Events – Guaranteed, of the Interoperability Guide provides conceptual information about real-time events, identifies APIs for creating real-time events, and provides sample code.

Before you create a custom real-time event, you should review the existing real-time events to determine if there is one that you can use as a model for creating your custom real-time event. Detail information about each real-time event can be found in the Application Real-Time Events Implementation Guide.

See JD Edwards EnterpriseOne Application Real-Time Events 8.12 Implementation Guide

Use the following steps to create a custom real-time event. Each step includes a reference to documentation that provides more information about that step.

  1. Determine the type of real-time event (single, aggregate, or composite).

    See Understanding Real-Time Event Generation.

  2. Create a new data structure or modify an existing data structure to pass data.

    See Understanding Data Structures, Creating Data Structures.

  3. Create a new event definition.

    See Defining Events.

  4. Create a new business function or modify an existing business function to call the API that generates the event.

    See Using Business Function Calls.

    See Understanding Business Functions.

    See Development Standards for Business Function Programming Overview.

    See JD Edwards EnterpriseOne 8.97 Tools API Reference Guide on Oracle | PeopleSoft Customer Connection.

  5. Build and promote the business function.

    See Understanding Package Management.

  6. Add the subscriber, associate the event to the subscriber, and enable the subscription.

    See Establishing Subscriber and Subscription Information.

  7. Configure Object Configuration Manager (OCM) for Guaranteed Event Delivery.

    See Setting Up OCM for Guaranteed Events.

  8. Configure and start your servers (transaction, integration, and enterprise) and test the real-time event.

    See Logging Events.

    See JD Edwards EnterpriseOne Tools Release 8.97 Server Manager Guide on Oracle | PeopleSoft Customer Connection.

    See JD Edwards EnterpriseOne Tools Release 8.97 Tools Reference Guide on Oracle | PeopleSoft Customer Connection.

    See JD Edwards EnterpriseOne Tools Release 8.97 Transaction Server Components Reference Guide on Oracle | PeopleSoft Customer Connection.

Click to jump to parent topicGenerating Schemas for Event XML Documents

This section provides an overview of the Schema Generation Utility and discusses:

Click to jump to top of pageClick to jump to parent topicUnderstanding the Schema Generation Utility

The Schema Generation Utility creates XML schemas from event definitions. The purpose of this utility is to facilitate orchestration developers who use orchestration systems such as Oracle’s Enterprise Service BUS (ESB) or Business Process Execution Language Process Manager (BPEL-PM) to process real-time events, XAPI events, and Z events.

The Schema Generation Utility provides the option to generate and save the schemas. The Schema Generation Utility generates schemas for these events

In addition, the Schema Generation utility can generate XML schema for generic header representing all events. This schema can be used in orchestration systems for content-based routing.

This illustration provides an overview of the Schema Generation utility.

Schema Generation Utility

Prerequisite

Before you configure the Schema Generation Utility, you must install a Java Runtime Environment (JRE) version 1.4.0 or later on your local machine. You can download a JRE from the Sun Developer Network (SDN) web page (http://java.sun.com/).

Click to jump to top of pageClick to jump to parent topicConfiguring the Schema Generation Utility

The Schema Generation Utility is delivered in a zip file in the system\classes folder. You must download the zip file to your local machine and set up certain files. You use these setting in Step 4.

Section

Setting

Value

[EVENTS]

initialContextFactory

For Oracle Application Server, the default value is:
com.evermind.server.rmi.RMIInitialContextFactory

For WebSphere Application Server, the default value is:
com.ibm.websphere.naming.WsnInitialContextFactory

[EVENTS]

jndiProviderURL

For the Transaction Server running on an Oracle Application Server, the value is:
jndiProviderURL=opmn:ormi://machine_name:6003:e1transvr/EventProcessor

For the Transaction Server running on a WebSphere Application Server, the value is:
jndiProviderURL=corbaloc::Machine_name:Port/NameServiceServerRoo

Note. Machine_name in this setting is the machine name where the Transaction Server is installed

Port in this setting is the Bootstrap Address port of the Transaction Server. Generally the port is 9810.

[EVENTS]

eventServiceURL

The value is:
http://machine_name:port/e1events/EventClientService

Note. Machine_name in this setting is the machine name where the Transaction Server is installed, up, and running.

Verify the ‘hostport’ property in jas.ini of Transaction Server for port information and to find the exact port for the URL.

[SECURITY]

SecurityServer

Provide the name of the user’s EnterpriseOne Security Server.

[JDENET]

serviceNameConnect

Provide the port you are connecting on to the user’s EnterpriseOne Security Server.

[INTEROP]

enterpriseServer

Provide the name of the user’s EnterpriseOne Server.

[INTEROP]

port

EnterpriseOne Server port.

Use these steps to configure the Schema Generation Utility:

  1. Navigate to system\classes folder and unzip the SchemaGenUtil.zip file to C:\SchemaGenUtil directory in your machine.

    Ensure to unzip the file with the full path information for each file in the zip file.

  2. Configure the files in your C:\SchemaGenUtil\config directory.

    Ensure that the configured files have the “.templ” file extension removed from them. The proper filenames for that directory are jdbj.ini, jdeinterop.ini, and jdelog.properties.

  3. Configure jdbj.ini and jdelog.properties files according to the environment.

    The simplest solution for the jdbj.ini file is to use the same file that has been configured on the Transaction Server.

    Note. See your EnterpriseOne Systems Administrator if the appropriate values for these files are not known.

  4. Configure the jdeinterop.ini file sections and settings that are identified in the preceding table.

  5. Edit the C:\SchemaGenUtil\runSchemaGenUtilityDriver.bat file, pointing it to the location of the installed JRE.

Click to jump to parent topicUsing the Schema Generation Utility

This section provides an overview of the Event Schema Generator screen and discusses how to:

Click to jump to top of pageClick to jump to parent topicUnderstanding the Event Schema Generator Screen

You use your JD Edwards EnterpriseOne user credentials to log into the Schema Generation Utility. Upon successful login, the Event Schema Generator screen appears. This screen has two panels, Event Operations and Exception. You use the Event Operations panel to generate and display schemas for events. The Exception panel informs you of errors.

Prerequisites

Before you use the Event Schema Generator, ensure that you have the following:

Event Schema Generator Screen

This example Event Schema Generator screen shows the two panels on the Event Schema Generator screen:

You use the Event Operations panel to provide information about the event or events for which you want schema generated. The utility provides the three event categories (real-time, XAPI, and Z events) from which you select and you must identify the environment. All events for which you want to generate a schema must be active in the environment you indicate. When you select an event category and environment, the utility provides a list of events that are available. Click the Clear Selection button to clear the selection in the Event List pane. After the utility generates the schema, the schema is displayed in the Event Schema field.

If an error occurs during schema generation, the utility displays an error message in the Error Messages field of the Exception panel. You remove a message by clicking the Clear Error Message button.

If there are no events available in the given environment, the Schema Generation Utility displays an error message, such as No event available for RTE in DEMOENV” in the Error Message panel.

You terminate the Schema Generation Utility by clicking Close at the right top in the main frame.

Logging In to the Schema Generation Utility

Use these steps to log in to the Schema Generation Utility:

  1. On your local machine, navigate to C:\SchemaGenUtil directory and double-click the runSchemaGenUtilityDriver.bat file.

    The Event Schema Generator sign-on window appears.

  2. Enter your JD Edwards EnterpriseOne user credentials for these fields:

  3. Select the Remember Sign On Info option if you want the system to remember your sign on information, and then click OK.

    Note. You can ignore the following warning message:

    Unable to initialize the management agent. Server Manager capability will be unavailable

Displaying Event Schema

Use these steps to display the event schema:

Use these steps to display event schema:

  1. In the Event Operations panel of the Event Schema Generator screen, select the type of event from the Event Category field.

  2. In the Environment field, enter the name of the environment that has the active event.

  3. In the Event List field, select an event.

    Select only one event. If you select multiple events, the utility displays an error message in the Error Messages field of the Exception panel. The error message for selecting multiple events indicates invalid input. Click the Clear Selection button to clear a selection from the Event List.

    Click the Clear Selection button to clear a selection from the Event List.

  4. Click Display Schema

The utility displays the generated schema in the Event Schema field.

Click to jump to top of pageClick to jump to parent topicGenerating Event Schema for Single and Multiple Events

You can generate schema for a single event and save the schema to a file. The utility saves generated schemas with a file extension of .xsd. After you complete the selection criteria and click Generate Schema(s) on the Event Schema Generator screen, a file chooser dialog screen appears. You indicate the file path and enter the file name.

This diagram illustrates the file chooser dialog screen:

Save screen for a single event

This diagram provides an example of the file chooser dialog screen:

You can generate schemas for multiple events and save the schemas to a directory. To select multiple events from the Event List field, press the Ctrl key and select the event. After you complete the selection criteria and click Generate Schema(s) on the Event Schema Generator screen, a Select Directory dialog screen appears. You indicate the full path name where the directory is located. The utility saves each schema file as E1_EventType.xsd; for example, E1_RTSOOUT.xsd.

Generating Schema for Single and Multiple Events

Use these steps to generate event schema for single and multiple events:

  1. In the Event Operations panel of the Event Schema Generator screen, select the type of event from the Event Category field.

  2. In the Environment field, enter the name of the environment. If you select multiple events, all events must be active in that environment.

    If you select multiple events, all events must be active in that environment.

  3. Do one of the following:

Click to jump to top of pageClick to jump to parent topicGenerating Event Schema for all the Events of Selected Event Category

You can generate schemas for all of the events within an event category. The events must be active in the environment. On the Event Schema Generator screen, you select the event category and then click Generate All Schemas. A dialog screen named Select Directory appears. You indicate the full path name of the directory where you want to store the schema. The utility saves each schema file as E1_EventType.xsd; for example, E1_RTSOOUT.xsd.

This diagram provides an example of the Select Directory dialog screen for saving all of the events in a category:

Click to jump to top of pageClick to jump to parent topicGenerating Header Schema

This section discusses how to generate and save the header schema.

Use these steps to generate header schema:

  1. Click the Header Schema button and provide the file path with file name to save the header schema.

  2. After generating header the schema, the Schema Generation Utility displays the header schema.

Click to jump to parent topicTroubleshooting the Schema Generation Utility

This table provides resolutions for problems that might occur:

Problem

Resolution

An error message appears after sign-on.

Ensure all the given credentials (User name, Password, Environment, and Role) are correct.

C:\SchemaGenUtil\logs directory is getting full of files. Can some of the .log and/or .xml files in that directory be deleted?

Delete any files in that directory at any time. If the Schema Generation Utility application is running, some of the files may be locked.

An error message that you do not understand appears in the Error Messages field.

Look at C:\SchemaGenUtil\logs directory for the jasdebug_date.log file that corresponds to the appropriate date. Often a more explanatory error message can be found in this log file.

Specification not found error is displayed in the Error Messages field.

Verify that the selected event is active and available in the environment you indicated.

This type of error message will read similar to this:
Spec not found for requested template: EventCategory: EventType