Creating an Account in Siebel Using BPEL and Web Services

This tutorial shows you how to create, deploy, and test a BPEL process to create customer accounts in a Siebel Application.

Approximately 1 hour

Topics

This tutorial covers the following topics:

Place the cursor over this icon to load and view all the screenshots for this tutorial. (Caution: This action loads all screenshots simultaneously, so response time may be slow depending on your Internet connection.)

Note: Alternatively, you can place the cursor over an individual icon in the following steps to load and view only the screenshot associated with that step. You can hide an individual screenshot by clicking it.

Overview

Siebel applications are built on a rich technology stack, and have been supporting web services starting from version 7.5.3 . Major web services support came in version 7.8 and in 8.0 it was expanded to support numerous out of the box web services for Customer Order Management. Hence if you are working with any version later than 7.8, then you can typically use direct web services for integration. BPEL Process Manager is certified with Siebel v 7.8.2 onwards. This tutorial demonstrates how to use BPEL Process Manager to consume a Siebel generated WSDL to invoke an inbound Siebel Account Web Service (also known as Siebel ASI - Application Service Interface)

Back to Topic List

Before you perform this tutorial, you should:

1.

Have installed Oracle SOA Suite 10g (10.1.3.1). You can download the software from Oracle Technology Network web site.

2.

Have installed Oracle JDeveloper 10g. (10.1.3.2). You can download the software from Oracle Technology Network web site.

3.

Have access to Siebel 7.8 instance with Call Center.

4.

Have access to the SiebelAccount.xsd file. Right click the file link and choose Save Target As .... from context to download and save the file to a local directory of your choice. You use this file later in this tutorial.

5.

Perform the steps provided in the tutorial Create an Inbound Web Service for Siebel Account Business Service

   

Back to Topic List

Log in to Siebel Call Center

Log in to Siebel Call Center using appropriate credentials. Perform the following steps:

1.

Enter the following URL to log in to Siebel Call Center (change the <hostname> to localhost or your specific hostname). Note that the port number used in this tutorial is 7777, which might be different for your setup/operating system. Use the port number that is appropriate for your setup.

http://<hostname>:<port#>/callcenter_enu/start.swe

 

2.

To log in to Siebel Call Center, enter the credentials of a System Administrator, and click Login. In this example, following values are used:


Username: SADMIN
Password: SADMIN

 

3.

Siebel Call Center Home page appears. Click the Site Map (spherical) icon on the home page to view available services.

Back to Topic List

In this topic, you select an inbound Web Service that exposes a Siebel account called Customer Account and generate WSDL for it. To do this, perform the following steps:

 

1.

Left mouse click the Administration - Web Services link to bring up the administrative options for Web Services.

 

2.

Click the Inbound Web Services link to view the list of delivered Web Services.

You now see the Inbound Web Serivces screen that lists all available Inbound Web Services.

 

3.

Scroll down the list of Inbound Web Services to locate the Customer Account Web Service. This is a delivered Web Service that exposes a Siebel account named Customer Account. (You create this Web Service from a previous OBE tutorial in this series named Create an Inbound Web Service for Siebel Account Business Service.

Alternatively click the Query button to locate this Web Service.

Enter Customer Account as Web Service name to be queried and click Go. Note that the query is case sensitive.

This query displays entry of the Customer Account Web Service.

 

4.

Click Clear Cache to refresh the cache. You perform this task each time you make changes such as change the Namespace URL/Name of a Web Service.

 

5.

Examine the Service Port and Operations sections corresponding to the Customer Account Web Service by scrolling down the window. Notice the Transport (HTTP) and Address Field(URL) values.

You may observe from the Transport drop down list that there are other transport protocols/methods available such as MQ and JMS.

 

6.

In the Operations section, notice that three operations (Insert, Query by ID, and Query By Example) are exposed for the Customer Account Web Service. For this tutorial, you use the Insert operation on this Customer Account Web Service. You need this information for importing the WSDL while creating a BPEL process using JDeveloper, as explained later in this tutorial.

 

7.

In the Inbound Web Services section, click the Generate WSDL button to generate a WSDL file for the Customer Account Inbound Service.

View the generated WSDL in a browser window.

8.

In the browser window, select File > Save As to save the generated WSDL file as SiebelAccountInsertWS.wsdl. You use this WSDL file later in the BPEL process design time

Back to Topic

Create, Deploy, and Test a BPEL Process To Create a Customer Account in Siebel

In this topic, you create, deploy, and test a BPEL process. To do this, perform the following steps:

A Create and Deploy a BPEL Process that invokes methods of a Siebel Inbound Webservice.
B. Test the integration with Siebel

Back to Topic List

Create and Deploy a BPEL Process

In this topic, you learn to create a BPEL process and deploy it to the default Application Server connection. Perform the following steps:

Prerequisites:

Perform the following prerequisite steps:

1.

Start SOA Suite: Click Start > Programs > Oracle-SOA > Start SOA Suite.

2.

Start BPEL Console. Click Start > Programs > Oracle-SOA > Oracle BPEL Process Manager > BPEL Control.

 

3.

Now, start JDeveloper to design the BPEL process. Double-click the JDeveloper executable jdeveloper.exe found in the root directory (<jdev_home>) where you unzipped it.

If the Migrate User Settings dialog box opens, click NO.

Close the Tip of the Day window.

The JDeveloper IDE should now be displayed.

 

Create a BPEL Process

In this task, you create a BPEL Process based on a .xsd file that contains structure of a Siebel customer account sample. You extracted this file from a previous step in this tutorial. Perform the following steps to complete this task:

Create a BPEL Process
1.

In JDeveloper, right click the Applications node in the Applications Navigator and select New Application from context.

.

 

2.

In the Create Application dialog box, enter the Application Name as SiebelCust_WS and click OK. This application hosts a BPEL process that you are going to create later in this tutorial.

 

3.

Do not create an associated project at this point. Hence, in the Create Project dialog, Click Cancel.

 

4.

Observe that the application SiebelCust_WS is created in your Applications window. Now you create a synchronous BPEL process under this application. Right click this application and select New Project.

5.

In the New Gallery window, select BPEL Process Project and click OK

.

6.

In the BPEL Project Creation Wizard, enter name of the process as SiebelCreateAccount. Select Synchronous BPEL Process as the template. Click Next

.

7.

To select an Input Schema Element, click the browse icon, navigate to the directory where you saved the SiebelAccount.xsd file from a previous step in this tutorial, and select the file. This .xsd file resembles structure of a customer account that has to be created in Siebel.

.

8.

Expand the Type Explorer from the Type Chooser popup window to select SiebelAccount.xsd as the Type. Click OK.

.

Click Finish

9.

Observe the tree structure in the Application Navigator window and the SiebelCreateAccount.bpel process design window.

Create a Partner Link

In this task, you create a partner link that is based on the WSDL file generated from a Siebel Inbound Web service earlier in this tutorial. Perform the following steps to complete this task:

1.

Rightclick anywhere in the Services section the SiebelCustomerAccount.bpel designer window and select Create Partner Link.

 

2.

Enter name of the partner link as Siebel_BPEL. Click the Browse WSDL Files from Local File System button to select the WSDL file that was generated through the Siebel Call Center in a previous step in this tutorial.

 

3.

Choose the SiebelCustomerAccount_80.wsdl file from your local file system where you saved it earlier in this tutorial. Click Open.

4.

If you receive a message that you are attempting to reference a WSDL that is external, click Yes.

Click Yes in the Partner Link Type box to create a new WSDL file that creates Partner Link types.

5.

Select CustAccount_Role for both the Partner Role and My Role fields.

Click Ok.

6.

View the Partner Link created under the Services section of the SiebelCreateAccount.bpel diagram view.

Create an Invoke Activity
1. From the BPEL Designer window, click the Component Palette and select Process Activities from the drop down list.

Drag the Invoke activity from the Process Activities list and drop it below the receiveInput activity in the SiebelCreateAccount.bpel diagram view.

2.

Create a link between the Invoke_1 activity and the Siebel_BPEL Partner Link. Perform this step by dragging the link icon from the Invoke_1 activity to the partner link. This step helps to establish a structural relationship between the variables of the BPEL process and the .xsd file.

3.

Now set properties for the invoke activity. Set Name of the Invoke activity as Invoke_InsertSiebelAccount

Select AccountInsert as the operation to be performed.

Click the Automatically Select the Input Variable icon next to the Input Variable field. Select the default Global variable displayed. Click OK.

Select default Global variable for the Output Variable in a similar way.

Click Ok to complete the process of setting the properties of the Invoke activity. Observe the settings.

 

Create a Transform Activity to Send Input Request Data to The Invoke activity
1. From the BPEL Designer window, click the Component Palette and select Process Activities from the drop down list. Scroll down the Process Activities list to locate Transform icon.

Drag the Transform activity from the Process Activities list and drop it between the receiveInput activity and the Invoke_InsertSiebelAccount activity in the SiebelCreateAccount.bpel diagram view. This activity helps to assign values to the input variable.

2.

Double click the Transform activity to set properties for input variables. select Invoke_InsertSiebelAccount_InputVariable as the Target Variable. Observe the change in values displayed in the Target Part for the payload.

Ignore the error indication in the Transform window. It goes away after you validate your activity successfully.

Click SiebelMessage from the Target Part. With this step, you are now assigning a payload to the SiebelMessage.

Click Apply.

3.

In the Transformation_1.xsl diagram view, observe the payload structure displayed from the source and the target account. Under the Target section, expand the ns1:ListOfAccountInterface node by one level to observe the ns:Account. node.

Now create a mapping between the source and the taget input variables. To perform this task, point the mouse at the source SiebelAccount variable and drag it to map to the target variable ns1:Account.

In the Auto Map Preferences pop-up window, make sure that the Match Elements with Exact Names option is selected and click OK.

Observe that a mapping is now created between the source and target input variables.

You can expand the target variable further to see field to field mapping.

4.

Save all your changes. Activate the SiebelCreateAccount.bpel diagram view. Click the Validate Process button to validate the transformation. Click OK to complete the transformation process in the Transform Window.

Create an Assign Activity to Send Output Data from the Invoke activity
1. From the BPEL Designer window, click the Component Palette and select Process Activities from the drop down list. Scroll the Process Activities list to locate the Assign icon.

Drag the Assign activity from the Process Activities list and drop it between the Invoke_InsertSiebelAccount activity and the receiveOutput activity in the SiebelCreateAccount.bpel diagram view. This activity helps to assign values to the invoke output variable.

2.

Double click the Assign activity to set properties for output variables. In the Assign Window enter the following information:

In the General tab, assign name of the activity as CopyOutput and click Apply

 

3.

In the Copy Operation tab, click Create to display the Create options window and select Copy Operation from the drop down list.

In the From section, expand the Process > Variables > Invoke_InserSiebelAccoutn_AccountInsert_OutputVariable > SiebelMessage > ns3:ListOfAccountInterface > ns3:Account variable and select the ns3:AccountId variable. This is the source output variable whose value will be copied to the target output variable. Note: The number next tot he NS might be different in your instance.

In the To section, expand the Process > Variables > OutputVariable > payload > client:SiebelCreateAccoutnProcessResponse > client:result node.

Click OK in the Create Copy Operation window.

Click OK in the Assign window to complete the assign process.

Save all your work.

In this topic, you create a connections to an application server and to an Integration server to whcih you deploy your BPEL process and then test the process. To do this task, perform the following steps:

a.
b.
c.

a. Create a Connection to the Application Server and to the Integration Server:

In this task, you create connection to the Integration server to which you deploy the BPEL process. This inturn requires a connection made to the Application Server where the SOA Suite is installed.

1.

In BPEL Designer, select the Connections Navigator tab. Right click Application Server and select New Application Server Connection.

Click Next on the Welcome page.

2.

Type iAS10g for the Connection Name and choose Oracle Application Server 10g 10.1.3 from the Connection Type drop down list. Click Next.

 

3.

Enter username and password for the connection. These are the values you must have provided while installing the SOA Suite server. For this tutorial, these values are set as oc4jadmin and welcome1 respectively.

Click Next.

4.

Specify hostname, OC4J instance name, and the OPMN port number values as appropriate for your SOA Suite installation.

Click Next.

5.

Click Test Connection button and wait to see the results. The results should indicate that the connection is successful, as shown in the following screenshot.

If the connection is not successful, adjust your Application Server settings and retest the connection.

Click Finish when your test is successful.

6.

In the BPEL Designer, select the Connections Navigator tab. Right click Integration Server and select New Integration Server Connection.

Click Next on the Welcome page.

7.

Type SOAConnection for the Connection Name. Click Next.

 

8.

Set Application Server to the name you used in step 2 above and Host Name as appropriate for your installations. Port number is set in this tutorial to 8888. You need to verfiy values set for your SOA server nd provide the same here.

Click Next.

9.

Click Test Connection button and wait to see the results. The results should indicate that the connection is successful, as shown in the following screenshot.

If the connection is not successful, adjust your Application Server and Host name settings and retest the connection.

Click Finish when your test is successful.

With this step, you created a connection to the Integration Server to which you deploy the BPEL process created in a previous step.

b. Deploy BPEL Process to the Integration Server:

In this topic, you deploy the BPEL Process SiebelCustomerAccount.bpel to the Integration Server SOAConnection. To complete this task, perform the following steps:

1.

In the Application Navigator window, select and right click the SiebelCustomerAccount.bpel node.

Select Deploy > SOAConnection > Deploy to a default domain from the resulting menu options.

 

2.

In the Message Log window, notice the message that the deployment is successful, as shown in the following screenshot.

If you receive Deployment failed message, verify your BPEL process for any errors and redeploy the application.

c. Test the deployed BPEL process using BPEL Control:

In this step you test the BPEL process created in this tutorial and enter details to insert a customer account through the BPEL Control. Perform the following tasks:

1.

Select Start > Programs > Oracle - SOA > Oracle BPEL Process Manager > BPEL Control to open the BPEL Control

2.

In the browser window, enter username and password as set during your SOA Suite installation. For this tutorial, username/password are used as oc4jadmin/welcome1.

3.

Click the SiebelCustomerAccount from the Deployed BPEL Processes list in the Dashboard.

4.

In the Payload section, enter details for one Siebel Customer Account.

Click Post XML Message button. This process inserts a Siebel Customer account and returns a unique identifier using which you can query for the Customer account when required.

5.

Observe the unique identifier that is returned for the customer account created in the previous step.

 

Back to Topic

In this tutorial, you learned how to:

Generate a WSDL file from Siebel Call Center
Create, deploy, and test a BPEL process to insert a Siebel customer account.
      Tech/BPEL PM  |  2009. 3. 11. 17:09



archidream's Blog is powered by Daum