Working with JD Edwards Connector or WebSphere Adapter on different runtimes

Learn about working with the JD Edwards® Adapter or Connector on different runtimes, such as WebSphere® Message Broker, WebSphere Business Process Manager, WebSphere Cast Iron Appliance, and WebSphere Cast Iron Live.

Share:

Madhavi Kota (madhkota@in.ibm.com), Staff Software Engineer, IBM

Photo of Madhavi KotaMadhavi Kota is a Software Engineer at the IBM India Software Labs. She is currently part of the WebSphere Cast Iron team working on various technologies such as Java and RFT. She previously worked on the TXSeries for Multiplatforms and WebSphere Adapters teams. Madhavi has a Bachelor's Tech degree from the Vignan Institute of Technology and Science, India.



Aparna Srinivasan (apasrini@in.ibm.com), Software Engineer, IBM

Photo of Aparna SrinivasanAparna Srinivasan is a Test Specialist working on the WebSphere Cast Iron and Adapters Quality Assurance teams. She has experience working with various technologies such as Java and RFT. She is currently working on WebSphere Cast Iron and API Management. She completed her Bachelor of Engineering degree from Anna University, Chennai, India.



04 December 2013

Introduction

This article describes how to use the JD Edwards Adapter or JD Edwards Connector on different runtimes:

  • The JD Edwards Connector on WebSphere Cast Iron Appliance or Cast Iron Live provides the ability to interact with the JD Edwards EnterpriseOne server and to execute JDE E1 business functions and receive real-time events, without the need for coding. The connector works with the JD Edwards EnterpriseOne server by using the Java Dynamic Connector provided in the JDE tools API.
  • The IBM® WebSphere Adapter for JD Edwards EnterpriseOne provides the ability for applications in Business Process Manager to interact with the JD Edwards EnterpriseOne server and to execute JDE E1 business functions and XML list queries and to receive real-time events, without the need for special coding. The adapter works with the JD Edwards EnterpriseOne server by using Java(TM) Dynamic Connector provided in the JDE tools API.
  • The IBM WebSphere Adapter for JD Edwards EnterpriseOne on WebSphere Message Broker (hereafter called Message Broker) provides a way for applications to interact with data on JD Edwards EnterpriseOne applications. You can create business objects by using the Adapter Connection wizard. The adapter works with the JD Edwards EnterpriseOne server by using the Java Dynamic Connector provided in the JDE tools API.

Objectives

This article explains how the JDE Connector and the JDE Adapter work on different runtimes. The following points are explained:

  • Working with the JD Edwards Connector using WebSphere Cast Iron Studio and the deployment of the application in WebSphere Cast Iron Appliance and WebSphere Cast Iron Live.
  • Working with the JD Edwards Adapter on the WebSphere Message Broker runtime using the Message Broker Toolkit.
  • Working with the JD Edwards Adapter on the WebSphere Business Process Manager (BPM) runtime using IBM Integration Designer.

Prerequisites

You need to be familiar with:

  • WebSphere Cast Iron Studio and Appliance
  • WebSphere Message Broker runtime using the Message Broker Toolkit
  • WebSphere Business Process Manager runtime using IBM Integration Designer
  • Basic understanding of the JDE applications and Java Tools API

System requirements

The following products are required to configure and deploy the module:

  • IBM WebSphere Cast Iron Studio V6.3.0.0 or later
  • IBM WebSphere Cast Iron Appliance V6.3.0.0 or later
  • IBM WebSphere Message Broker with JDE Adapter
  • IBM WebSphere Message Broker Toolkit with JDE Adapter
  • IBM WebSphere Business Process Manager with JDE Adapter
  • IBM Integration Designer with JDE Adapter

Working with the JD Edwards Connector and the JDE Edwards WebSphere Adapter

JD Edwards EnterpriseOne from Oracle® is an integrated applications suite of comprehensive enterprise resource planning software that combines business value, standards-based technology, and deep industry experience into a business solution with a low total cost of ownership. The JDE Tools API provides the Java Dynamic Connector for interacting with JDE applications to execute JDE business functions and XML lists and to receive real-time events. The JDE Connector or Adapter is compatible with any version of JD Edwards EnterpriseOne that works with the supported versions of EnterpriseOne Tools.

Different runtimes can interact with the JD Edwards EnterpriseOne application. To connect to different runtimes, do the following:

  1. Download and install the JDE vendor JAR files to your Windows® machine where Cast Iron Studio is installed. You can obtain the JAR files from the JDE system administrator.
  2. Copy the dependency libraries to the local subdirectory, C:\temp\JDE_dependencies.
  3. Update the JDE Server details in the vendor JAR files.
  4. To check if the vendor JAR files are proper, refer to "E1: OUTBND: Running the JAVA Event Driver Sample Application. Tools Release 8.9x (Doc ID 1159739.1)" and "E1: JAVA: How to Run the Java Dynamic Connector Sample and Multi-Thread Sample for TR 8.97.x/8.98.x/9.1.x (Doc ID 660430.1)" from Oracle support for JD Edwards EnterpriseOne, which provides the Java Dynamic Connector sample and Events sample.

Successfully running these samples is a prerequisite, which enables you to collect various JARS and create configuration files (for example, jdeinterop.ini) that will be used with each of the runtimes.

Cast Iron runtime

IBM WebSphere Cast Iron Studio (hereafter called Studio) is a tool used to develop integration projects that can be deployed on WebSphere Cast Iron Integration Appliance or WebSphere Cast Iron Live runtime. WebSphere Cast Iron Studio consists of projects that contain various orchestrations. Orchestration is a workspace where you can drag and drop connector and other activities, configure it, and test it.

In this runtime, the endpoint for connecting to the JDE server must be as follows:

  1. In Studio, go to Tools > Install Module Providers. Browse and add the vendor JARs that were downloaded to the local subdirectory. The Add Providers window is displayed as shown in Figure 1.
    A pop-up window appears, which prompts you to manually restart Studio. Restart Studio and confirm that the JARs are visible in the Add Providers window.
    Figure 1. Add Providers window
    Add Providers window
  2. After Studio restarts, click the New Endpoint icon under the Project name on the right-side of Studio as shown in Figure 2.
  3. Right-click Endpoints > Create Endpoint and select the JDE endpoint. The JDE connection information tab is displayed as shown in Figure 2.
    Figure 2. WebSphere Cast Iron Studio JDE endpoint
    WebSphere Cast Iron Studio JDE endpoint
  4. Complete the following fields:
    • Environment: Specifies the code representing the JDE environment. Specifies the JD Edwards EnterpriseOne environment name.
    • Role: Specifies the name of the role that is associated with the user name used to access the JDE environment.
    • User Name: Specifies the user name that the Integration Appliance uses to connect to the JDE application. Specifies the user name to connect to the JDE server.
    • Password: Specifies the password associated with the application-access user name.
  5. Check if the Test Connection to the JDE endpoint from Studio is successful.

WebSphere Cast Iron can interact with the JDE Application through two activities. One is the "Invoke Business Function", which is an outbound processing activity. You can map the resulting output from this activity to an orchestration. The other is the "JDE Poll Real-Time Events" activity to poll real-time events from the JDE transaction server. A real-time event is a business transaction that provides information from the JDE server that is used to interoperate with a vendor system.


Invoking a Business Function activity

When the JDE endpoint is successfully created and tested, you can use the two activities of JDE: Invoke Business Function and Poll Real Time Event activity. The JDE Invoke Business Function activity is used to call a specific JDE business function. You can map the resulting output from this activity to an orchestration.

Figure 3. Invoke Business Function activity
Invoke Business Function activity
  1. Drag and drop the Invoke Business Function activity from the activities panel available on the right-side of Studio, as shown in Figure 3.
  2. Click the Invoke Business Function activity to view the configuration panel for this activity. In the JDE Invoke Business Function checklist, complete the following:
    • The Summary tab gives a brief explanation about the activity.
    • The Pick Endpoint tab provides the endpoint details. Check if the correct endpoint is added.
    • In the Configure tab, select one or more business functions from the Business Function List, and add it to the "Selected Business Functions" pane. For example, select CFIN > B0100033 > GetEffectiveAddress as displayed in Figure 4. This business function retrieves the Effective Address of the Address Book Record present in the JDE server.
    Figure 4. Invoke Business Function configuration
    Invoke Business Function configuration
  3. In Map Inputs, for example, specify the value for Mnaddressnumber as 1, and retrieve the address of the record corresponding to Mnaddressnumber = 1 .
  4. Verify the result of the orchestration created.

Poll Real-Time Events activity

The Poll Real-Time Events activity is the activity for inbound processing as shown in Figure 5. Real-time events can be generated when the business functions run, such as HTML, WIN32, and enterprise servers. Real-time events are useful for producing notifications in real-time.

  1. Drag and drop the Poll Real-Time activity to the workspace as shown in Figure 5.
  2. Select the JDE Poll Real-Time Events activity.
    Figure 5. Poll Real-Time Events activity
    Poll Real-Time Events activity
  3. The Poll Real-Time Event configuration panel is displayed. Complete the checklist as follows:
    • The Summary tab gives a brief explanation about the activity.
    • The Pick Endpoint tab provides the endpoint details. Verify if the correct endpoint has been added.
    • In the Configure tab, browse for real-time events. For example, select RTCOOUT real-time event as shown in Figure 6.
  4. Create a map between the output parameters and orchestration variables.
  5. Invoke an event for the Poll Real-Time Events activity and verify if the same event is received on the orchestration side.
  6. After the orchestration is validated, test the activity.
    Figure 6. JDE Poll Real-Time Events activity configuration
    JDE Poll Real-Time Events activity configuration

JDE activity deployed in WebSphere Cast Iron Appliance (runtime)

IBM WebSphere Cast Iron JDE projects can be deployed using a physical appliance (WebSphere DataPower Cast Iron Appliance XH40), a virtual appliance (WebSphere Cast Iron Hypervisor Edition), or a full cloud service (IBM Cast Iron Cloud/Live).

To do this, you must deploy the project that contains the JDE activity orchestration to Appliance/Live. To deploy a JDE project on an appliance, complete the following:

  1. After the JDE project is validated and tested in the Studio, deploy the project in Appliance/Cloud by selecting File > Publish Project. The Publish Project window is displayed.
  2. Specify the Host name of the Appliance/Live IP, User Name, and Password, and click OK. A message indicates that the project has successfully published.
  3. Log on to the appliance and verify if the project is added to the appliance.
  4. Upload the JDE vendor JAR files under System > Update Connector Libraries.
  5. Start the JDE project and check if the project is verified successfully. Also, verify if the correct output is received from the JDE Execute Business Function and JDE real-time activity.

WebSphere Process Server runtime

IBM Integration Designer is a development environment for end-to-end integration of service oriented application. It is an Eclipse-based tool for building SOA-based business process management (BPM) and integration solutions. You can run the integration solutions in the following runtime environments:

  • IBM Process Server
  • WebSphere Enterprise Server Bus (ESB)
  • WebSphere Data Power Appliance
  • WebSphere Business Monitor

The WebSphere JDE Adapter acts as a link for the applications in IBM Business Process Manager to interact with the JD Edwards EnterpriseOne server.

If you want Enterprise applications to interact with JD Edwards EnterpriseOne server, you need to add external software dependencies to the project. These software dependencies enable the external service wizard to communicate with the JD Edwards EnterpriseOne environment to discover JDE business functions, XML lists, and real-time events.

  1. Figure 7 displays the Required Files and Libraries window. Select the JDE EnterpriseOne Tools version from the left pane. The required files for the version you selected are displayed in the right pane.
  2. To add the JDBC driver files, click Add and navigate to the location of the JDBC driver files. Select the tnsnames.ora and classes12.zip files, then click OK > Next.
    Figure 7. New External Service window
    New External Service window
  3. Specify the following fields to connect to JDE EnterpriseOne as shown in Figure 8:
    • Environment: Type the name of the JDE EnterpriseOne environment.
    • Role: Type the role name that you use to access the JDE EnterpriseOne environment.
    • User name: Type the user name required to access the JDE EnterpriseOne server.
    • Password: Type the password you use to access the JDE EnterpriseOne server.
    Figure 8. Specify the Discovery Properties window
    Specify the Discovery Properties window

Outbound processing for the WebSphere Process Server runtime

WebSphere Adapter for JD Edwards EnterpriseOne supports synchronous outbound request processing. In the WebSphere Process Server runtime. the adapter processes requests by using one of two types of business objects: business functions and XML lists. A business function is a business object container that can contain one or many business objects, which can be processed as a single transaction. An XML list is a single business object that can query a table and return multiple records.

To provide an example of outbound processing, consider a project that contains both an XML list and a business function:

  1. Click Edit Query and select F0101 as business functions and XML list tables.
  2. In the Discovered objects list, select the Business Functions node and expand it. You can use the Filter icon as the list can be long. For example, select CFIN> B0100033 > GetEffectiveAddress and click OK.
  3. Expand the XML List Query and select F0101 (select the required configuration parameter that is displayed as a window) as shown in Figure 9.
    Figure 9. New External Service window
    New External Service window
  4. Complete the remaining steps by providing the default values for the Namespace and Relative Path fields and Container business object name field with GetEffectiveAddressContainer.
  5. Click the Add button of the Business Functions. Select GetEffectiveAddress, click OK, and thenNext.
  6. On the "Specify the Service Generation and Deployment Properties" screen, select Using security properties from managed connection factory and click Next.
  7. In the Specify the Service Location Properties window, click the New button next to the Module field to create a new module.
  8. Select the option module and provide the new module name, for example, JDEOUTBOUND and click Finish. The outbound application is created. Verify the results.

Inbound processing for the WebSphere Process Server runtime

The WebSphere Adapter for JD Edwards EnterpriseOne supports real-time events. A real-time event is a business transaction that provides information from the JD Edwards EnterpriseOne server that can be used to interoperate with a third-party system.

For example, if a company record is updated be the company, the JD Edwards EnterpriseOne server captures this change immediately, and one real-time event is generated by the JD Edwards EnterpriseOne transaction server. The adapter then communicates with the JD Edwards EnterpriseOne transaction server, retrieves this real-time event and processes it. After converting it into a business object, the adapter delivers this business object to the event endpoint.

To provide an example of inbound processing, consider a project that contains the real-time event of "RTCOOUT" as a business object.

  1. In the "Discovered objects" list, select the Real-Time Events node and expand it. Using the Filter icon may be helpful as the list can be long. Select the RTCOOUT node and click the Add button.
  2. Select the Configuration without operation field and click the OK button and click Next, as shown in Figure 10.
    Figure 10. Find objects in the Enterprise System window
    Find objects in the Enterprise System window
  3. In the Specify Composite Properties screen, use the default values for the Namespace and Relative Path fields. Click Next.
  4. In the Specify the Service Generation and Deployment Configuration screen, select Using security properties from the activation spec and click Next.
  5. In the Specify the Service Location Properties screen, click the New button next to the Module field to create a new module. The New Business Integration Project screen appears.
  6. Select Module and click Next. In the New Module screen, type Real-timeEventSample in the Module Name field. Click Next and then click Finish.

    The inbound application is created. Verify the results.

  7. Add a new Java component, which is used to receive the real-time event from the JDE Adapter. Enter the code shown in Figure 11 to print out the content.
    Figure 11. Code to print the output
    Code to print the output

WebSphere Message Broker runtime

WebSphere Message Broker manages the flow of information in your business, applying message processing rules to route, store, retrieve, and transform the information as required by the different systems in your business and the systems of your customers, suppliers, partners, and service providers.

The prerequisites to start working with the WebSphere Message Broker runtime are as follows:

  1. After MQ, Message Broker, Message Broker Toolkit, and MQ Explorer are installed in the local machine, create a Queue Manager, a Broker, and local/remote queues (IN, OUT, ERROR for Outbound and OUT, ERROR for Inbound) for the Queue Manager from the MQ Explorer. Start Message Broker and Queue Manager.
  2. Open the Message Broker Command Console tool. This tool is present in Start > All Program > IBM WebSphere Message Broker.
  3. Execute the following three commands one by one in the Message Broker Command Console. The three commands are as follows:
    • mqsichangeproperties JDEBrokername -o JDEdwards -c EISProviders -n jarsURL -v C:\temp\JDEDependies
    • mqsichangeproperties JDEBrokername -o JDEdwards -c EISProviders -n nativeLibs -v C:\temp\JDEDependies
    • mqsireportproperties JDEBrokername -c EISProviders -o JDEdwards -r

    Notes:

    • You can change some of the Broker properties by using the “mqsichangebroker” command. For example, the timeout values for processing configuration requests.
    • You can view all Broker properties by using the “mqsireportbroker” command.

In this runtime, the endpoint for connecting the JDE server is described as follows:

  1. Open the Message Broker Toolkit. In the Broker Development window, right-click the Project tab and select New > Adapter Connection. The Adapter connection wizard window opens. The wizard is a tool that you use to create services. Add the JDE .rar file into the workspace using this wizard and click Next.
  2. To connect to the JDE Server from the Message Broker Toolkit, in the Connector Settings window, specify the path of the JAR file location, the local path of the vendor JAR files and the path of the two JARs (classes12.zip and tnsnames.ora) in the JDBC libraries field, as shown in Figure 12.
    Figure 12. Connector Settings window
    Connector Settings window
  3. In the Configure Settings for Discovery Agent window, specify the JDE server connection configuration, as shown in Figure 13:
    • Environment: Specifies the JDE EnterpriseOne environment name.
    • Role: Specifies the name of the role that is associated with the user name used to access the JDE EnterpriseOne environment.
    • User name: Specifies the name of the adapter user account on the JDE EnterpriseOne environment.
    • Password: Specifies the password of the adapter user account on the JDE EnterpriseOne environment.
    Figure 13. Configure the settings for the Discovery Agent window
    Configure the settings for the Discovery Agent window

Outbound processing for the WebSphere Message Broker runtime

The WebSphere Adapter for JD Edwards EnterpriseOne supports synchronous outbound request processing. In the Message Broker runtime, the adapter processes requests by using one of two types of business objects: business functions and XML lists. A business function is a business object container that can contain one or many business objects, which can be processed as a single transaction. An XML list is a single business object that can query a table and return multiple records.

To provide an example of outbound processing, consider a project that contains both an XML list and a business function.

  1. Once the endpoint is configured for JD Edwards EnterpriseOne server, proceed with the outbound in the Adapter Style window.
  2. Next is the "Find and Discover services" window where you can choose your business function and/or XML list query by finding and discovering the services needed.
  3. Click on Edit Query and select the business function and XML list query as "F0101".
  4. Now click on the Execute Query icon, so that the business function and XML List Query are listed. Open the section for the XML list query. Select F0101 (select the required configuration parameter that pops up as a window) and Business Function CFIN > B0100033 > GetEffectiveAddress. Move it to the objects to be imported as shown in Figure 14.
    Figure 14. Find and Discover Services window
    Find and Discover Services window
  5. Complete the remaining steps to create the Message Set Project and Adapter component name and the description to publish the project.
  6. Now, you can create a message flow by providing a new message flow for the project.
  7. Create the flow by configuring the adapter with input, error, and output queues from the message.
  8. The message flow to test is shown in Figure 15. Verify the result by testing the message flow by providing input for Mnaddressnumber (for example, 1).
    Figure 15. Message flow
    Message flow

Inbound processing for the WebSphere Message Broker runtime

WebSphere Adapter for JD Edwards EnterpriseOne supports real-time events. A real-time event is a business transaction that provides information from the JDE EnterpriseOne server that can be used to interoperate with a vendor system.

For example, if a company record is updated, the JDE EnterpriseOne server captures this change immediately, and one real-time event is generated by the JDE EnterpriseOne transaction server. The adapter then communicates with the JDE EnterpriseOne transaction server, retrieves this real-time event, and processes it. After converting it to a business object, the adapter delivers this business object to the event endpoint.

Inbound processing can be done through Poll Real Time Event activity in WebSphere Message Broker runtime, which is elaborated through an example as follows:

  1. After you have configured the endpoint for JD Edwards EnterpriseOne server, complete the inbound process in the Adapter Style window.
  2. In the Find and Discover services window, select your event type.
  3. Click Execute Query and select RTCOOUT as the Real-Time Event, as shown in Figure 16.
    Figure 16. Find and Discover Services window
    Find and Discover Services window
  4. Complete the remaining steps of creating the Message Set Project and Adapter component name, and the description to publish the project.
  5. Create a message flow by providing a new message flow for the project.
  6. Create the flow by configuring the adapter with error and output queues from the message.
  7. The message flow to test is displayed in Figure 17. Test the inbound using "RFHUTIL.exe". Set up and use RFHUTIL.EXE to test the inbound.
  8. Open RFHUTIL.EXE. This is the client version of the tool.
  9. The drop-down for the Queue Manager is now available on the Main tab. Click the drop-down and pick the connection. Click Load Names on the Main tab to connect to the currently selected Queue Manager and request a list of available queues that will be loaded to the drop-down menu. Type the name of the queue that you want to connect in the Queue Name box on the Main tab. Invoke an event and see the messages in the Data tab.
  10. Verify the result in the Data tab of the RFHUTIL window.
    Figure 17. Message flow
    Message flow

You have now learned about outbound and inbound processing for the WebSphere Cast Iron, WebSphere Message Broker, and WebSphere Process Server runtimes.


Conclusion

This article described how you can work with the JDE Adapter or Connector with different runtimes. The article discussed the endpoint connectivity and outbound and inbound processing for different runtimes, such as WebSphere Message Broker, WebSphere Business Process Manager, WebSphere Cast Iron Appliance, and WebSphere Cast Iron Live.

Acknowledgments

The authors would like to thank C. Vamsi and Roshini Sunil for reviewing this article and providing their valuable input.

Resources

Learn

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into WebSphere on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=WebSphere
ArticleID=955737
ArticleTitle=Working with JD Edwards Connector or WebSphere Adapter on different runtimes
publish-date=12042013