Skip to Content
Author's profile photo Rajesh Ghosh

Publishing a BODS Batch Job as a Web Services using custom WSDL labels

BODS Version 4.2 SP2

I am new to web services and initially I struggled to find these steps. So trying to help other first timers.

Please feel free to correct me if something does not look correct.

In this step-by-step guide I would take the example of publishing the batch job named “1_JB_Test_WS” as a web service.

This job was created with data services designer and resides in the local repository named “RAJESH_DS_LOC”.

Before we start I would like to mention that this feature of “custom WSDL labels” is not present in BODS Version 4.2 SP1.

It was introduced in BODS Version 4.2 SP2.

In the following screen shots I used either Green/Red arrow or rectangle box for highlighting the focus area of importance.

Short description: From the SAP data Services Management Console we need to add this batch job as a Web Service,

add a Custom WSDL Label, then associate this label with this Batch Job and then generate the custom WSDL for

the end consumer.

Following are the steps to achieve this,

1) Open the SAP data Services Management Console.

2) Login as an administrator.

/wp-content/uploads/2014/07/1_509843.jpg

3) From the Welcome screen click on the Administrator icon or link.

/wp-content/uploads/2014/07/2_509844.jpg

4) From the Administrator screen click on the Web Services link from the left side menu panel. It would display the web service configuration page with three tabs on the right hand side. The tabs are “Web Services Status”, “Web Services Configuration” and “Custom WSDL Labels”.

/wp-content/uploads/2014/07/3_509845.jpg

5) Click on the Web Services Configuration tab. This tab displays all the currently published web services.

6) On the Web Services Configuration tab click on the drop down below as shown in the picture below(red box).

/wp-content/uploads/2014/07/4_509846.jpg

7) Select “Add Batch Job…” from the list.

/wp-content/uploads/2014/07/5_509847.jpg

8) On the “Web Services Configuration – Add Batch Jobs” screen select the Repository where the batch job resides.

   In this example, the batch job named “1_JB_Test_WS” resides in the local repository named “RAJESH_DS_LOC”.

9) After the repository is selected, a list of jobs residing in this repository will be displayed.

10) From the list of jobs displayed: Select your job to be published as a web service. eg “1_JB_Test_WS” is selected.

11) Click the “Add” button.

/wp-content/uploads/2014/07/6_509848.jpg

11) On successful Add it should take you back on the “Web Services Configuration” page where this job should be displayed in the

    Published Web Service Operations section as shown below(red arrow).

/wp-content/uploads/2014/07/7_509849.jpg

12) Next we should be adding the “Custom WSDL Labels”. Click on the “Custom WSDL Labels” tab.

13) Click the “Add” button. (as Shown below)

/wp-content/uploads/2014/07/8_509850.jpg

14) From the “Add Custom WSDL Label” page add the new WSDL Label Name. eg, JB_Test_LBL as shown below.

15) Click the “Add” button. (as Shown below)

/wp-content/uploads/2014/07/9_509851.jpg

16) After successful Add the screen should flow to the “Published Web Service Operations section” where we need to

    associate the new label “JB_Test_LBL” with this Batch Job “1_JB_Test_WS”.

17) Click on the Select check box section of the operation named “1_JB_Test_WS” (shown below with the red arrow)

18) Click the “Apply” button.

/wp-content/uploads/2014/07/10_509852.jpg

19) Following screen would show the new label named “jb_test_lbl” created along with the list of all other labels(if any).

/wp-content/uploads/2014/07/11_509853.jpg

20) Its time to generate the custom WSDL now 🙂 , lets click on the “Web Services Status” tab as shown below.

/wp-content/uploads/2014/07/12_509854.jpg

21) From the Label drop down: select the new label named “jb_test_lbl”.

22) Click the “View WSDL” button.

/wp-content/uploads/2014/07/13_509855.jpg

23) It should pop up a new internet explorer window with the custom WSDL generated.

    The URL for the same should be “http://<ServerName>:8080/DataServices/servlet/webservices?ver=2.1&label=jb_test_lbl&wsdlxml”

Note: Before deploying above steps for production or any other environments please consult with systems security expert or enterprise architect or concerned management officials if the above steps are safe and acceptable to publish a web service.

Assigned Tags

      5 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Thank you for this article. I have a question, when we expose a batch job as a WebService, is it SOAP based or REST based?

      Author's profile photo Former Member
      Former Member

      The web service and all batch jobs in the web service are SOAP based.

      Author's profile photo Divij Kishore K
      Divij Kishore K

      Hello Rajesh,
      Thanks for the step by step procedure.

      But when we complete the step 22 by clicking on view WSDL button, then we get a popup window for with the link as told in Step 23.

       

      But we get the below screen. Is it correct ?

      If so, then how can we run the job from that link. Please suggest further.

      Author's profile photo Divij Kishore K
      Divij Kishore K

      Hello All,

      @rajesh.ghosh Can any one suggest on the above ?

       

      Thanks,

      Divij Kishore

      Author's profile photo Former Member
      Former Member

       

      Divji,

      Just do a right click and view source on the page and then save the xml (wsdl) to your local drive, Then use a tool such as SOAP UI to import the WSDL into the tool, populate the request payload and submit to the endpoint:

      http://<ServerName>:8080/DataServices/servlet/webservices?ver=2.1&label=jb_test_lbl&wsdlxml

       

      -Nikesh