| By Anjali Anagol-Subbarao | Article Rating: |
|
| February 11, 2005 12:00 AM EST | Reads: |
16,212 |
In the first article in this series (Vol. 3, issue 6), I gave you an overview of business process management (BPM) and covered the specifications in this area. I described the order change example and the steps needed to create the business process in WebLogic Integration (WLI). In the second article I looked at how to create a process application (orderChange). In this application I created a new process called orderChange.jpd. To start the process we added a ClientRequest received. Next we added the Web service validate config.
In the third article I added a decision point to handle the result from validate config Web service. The decision point helps in handling both the positive and negative outcomes of the result from the process. Then I added a database control to the process, which checks the status of the order to be changed. Finally, I added another decision node to handle the result from the database Control. In this article we will see how the change order is written out to a file. We will also see how this change order can be added to an ERP-based system (SAP). The code for the process will be examined.
Add a File Control
First let's see how to add the file control to the process.If the orderStatus allows for the order to be changed, the order can be written out to a file through a File Control. Alternatively, you can change an order in SAP using the Application View Control as decribed below.
A File Control makes it easy to read, write, or append to a file in a file system. You can also use the File Control to copy, rename, and delete files. To write to a file control you can add the File Control-ChangeorderFile to the process as shown in Figure 1. This writes an XML file to c:/bea directory, which can then be used to change the order. Once you have written the XML file to the directory, you can use it to update your order management systems.
Add an Application View Control for SAP
To write the order change to SAP, we need to create an integration solution from WebLogic to SAP using an SAP adapter. The integration framework in WLI is based on J2EE Connector Architecture 1.0. WLI provides adapters, application views, and Application View Control for integrating with an EIS.
The SAP adapter provides integration with SAP Business APIs (BAPIs), which are interfaces you can use to link your applications to SAP components. BAPI calls are synchronous and return information. This information is either error notification or a well-formed XML document containing the result of the BAPI call. The adapter also provides integration to Intermediate Documents (IDocs). These calls are asynchronous and do not return any information synchronously. The third integration is to Remote Function Calls (RFCs). RFCs are calls in which the application establishes a connection to the SAP system (using a valid User ID) and then issues a call to an SAP function. RFC calls are synchronous and usually return information.
To design an application integration solution with an SAP adapter, you must first download the SAP Adapter from the BEA Web site and the SAP JCo from the SAP Web site. To place an order in SAP from BEA WebLogic, you need to generate schemas for the Create Sales Order BAPI. This BAPI will facilitate creation of the order in SAP.
To generate schemas for SAP Business Objects (which will facilitate creation of the order), you need to install BEA Application Explorer. To create schemas you first need to either establish a new connection with SAP or use an existing connection. For a new connection you must name the connection (e.g., D7b), application server system number, client number, username, and password. When you connect to SAP, all the application components, IDocs, and RFCs are pulled into the Application Explorer. We specifically want to create a schema for the Change Sales Order BAPI. We can do that by right clicking on the BAPI and creating the request and response schemas (see Figure 2). These schemas and the manifest.xml file are stored in the working directory.
Next we need to define an RFC remote destination in SAP. You must define an SAP remote destination so that the SAP system can send IDocs to the adapter and respond to RFCs and BAPIs. This SAP remote destination must be defined before you create your application view.
Now create the application view by using the Application View Console. Select the SAP adapter and then create a new browsing connection. You then need to configure your service with or without load balancing. Figure 3 shows an example of SAP without load balancing. To test a service, go to the Application View Administration page and click the Test link next to the service to be tested. In the Test Service window, copy the appropriate XML strings from the SAP request. When you click Test, the results appear in the Test Results window.
After you have created an application view to send and receive schemas, a Control can be created from the application view. This Application View Control for SAP can be used in business processes.
Code for orderChange Business Process
In this section we'll look at the JPD for the orderChange business process and the code for the different parts of the process that we have created in the last few articles. Let's look at the details.
Start of the process:
/**
* @jpd:process process::
Name of the process:
* <process name="orderchange">
OrderChangeRequest as ClientRequest:
* <clientRequest name="orderChangeRequest" method="orderChangeRequest"/>
Process calling the validateConfig Web service:
* <controlSend name="validateConfig" method="validateConfignewValidateConfig"/>
First decision point to check if the configuration is valid:
* <decision name="Is configuration Valid?">
* <if name="true" condition="cond_outValidateConfig_1($outValidateConfig)">
Process calling the order status database control:
* <controlSend name="OrderStatus" method="orderstatusGetJNDIName"/>
Second decision point to find out if order is changeable:
* <decision name="Is order changeable?"> * <if name="Yes" conditionMethod="condition"/> * <default name="No"/> * </decision> * </if> * <default name="No"/> * </decision>
Business process writes the file through file control:
* <controlSend name="write" method="changeorderFileWrite"/>
* </process>::
Summary
We have seen how to write the change order file through a file control to a directory. This XML file can be used to create a change order in any of your order management systems. I have also shown you how to use an SAP adapter to connect to SAP. We looked at how to use BEA Application Explorer to connect to SAP to create request and response schemas. We saw how the Application View Console uses these schemas and creates an Application View. This Application View can be exposed to WebLogic Workshop to create an Application View Control. The Application View Control can be used in the business process to create a change order in SAP.
In the next and final article, we will look at converting this JPD process into a WSBPEL-specified process and how WLI accomplishes it. This process will be examined to see how it is executed. We will look at tools to monitor the process and see how HP and BEA are partnering to monitor the process in WLI.
References
Published February 11, 2005 Reads 16,212
Copyright © 2005 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Anjali Anagol-Subbarao
Anjali Anagol-Subbarao works in HP's IT organization as an IT architect. She has 12 years of IT experience, the last five in Web services. Her book on J2EE Web services on BEA WebLogic was published in October 2004.
- The Economics of Cloud Computing Analyzed
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Why SOA Needs Cloud Computing - Part 1
- The Cloud Transition: What Does It Mean For You?
- Cloud Computing Strategy
- IBM’s Mainframe Monopoly Threatened by BMC Founder’s Shop
- Economy Drives Adoption of Virtual Lab Technology
- Virtualization Expo Call for Papers Deadline December 15
- Oracle in Leader's Quadrant for Enterprise Application Servers
- Oracle Fusion Middleware Delivers World Record Single-Node Result
- The Economics of Cloud Computing Analyzed
- The Difference Between Web Hosting and Cloud Computing
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Citrix Aims To Cripple VMware’s Cloud Designs
- Product Evaluation: JBoss TCO Calculator
- Why SOA Needs Cloud Computing - Part 1
- Build Reliability into Cloud Computing for SMBs
- Perhaps SOA is More Strategy Than Architecture
- EC Wrong, Wrong, Wrong – and Sloppy to Boot: Intel
- Five Reasons to Choose a Private Cloud
- Java vs C++ "Shootout" Revisited
- Where Are RIA Technologies Headed in 2008?
- Configuring Eclipse for Remote Debugging a WebLogic Java Application
- Migrating a JBoss EJB Application to WebLogic
- XA Transactions
- The Top 250 Players in the Cloud Computing Ecosystem
- An Introduction to Abbot
- WebLogic Tutorial: "Integrating Apache Poi in WebLogic Server"
- Eclipse "Pollinate" Project to Integrate with Apache Beehive
- Failover and Recovery of Enterprise Applications - Part 1
- Cover Story: A Practical Solution to Internationalization of a J2EE Web App
- WebSphere vs WebLogic: IBM and BEA Spar Over SPEC Results
































