Skip to Content


Business scenario – A logistics system is sending Sales Area Information to a remote SFTP server via HCI. The message should be sent to the SFTP server only if the Sales Org field has a particular value else the flow should be terminated.

Intention – To understand the Gateway / Persist / terminate steps with an asynchronous scenario in HCI ( SOAP to SFTP ) including the testing and monitoring.

Pre-requisites

  • SOAP UI (SOAP UI 4.0.1 version or later versions)
  • Eclipse with HCI plug-ins
  • Tenant ID and access to HCI

Download Eclipse and install HCI plugins :

Download eclipse from http://eclipse.org/downloads/packages/release/Kepler/SR2  and choose the Windows 64 bit option ( based on your OS)


On the home page , Go to Help and choose ‘Install New Software’. Click Add Button and give the below URL: http://tools.hana.ondemand.com/kepler  and select ‘ Hana Cloud Integration’ option on the next screen. This completed the installation of HCI plugins in eclipse.


Note: HCI config can also be done using WEBUI apart from this eclipse option


Tenant connection :


Setup eclipse with your tenant

/wp-content/uploads/2016/08/op1_1026728.png

Create Integration Project and Iflow:

We will create the Integration Project which will hold our Iflow. Go to File -> New -> other and choose Sap Hana Cloud Integration. Select Integration Project and click next. Then create the Iflow as specified under.

/wp-content/uploads/2016/08/2_1026729.png

Configure Sender and Channels :

Click on the sender and give a name to sender system. select properties – > Basic authentication for the purpose of simplicity

/wp-content/uploads/2016/08/3_1026730.png

Import the WSDL :

Click on “src.main.resources.wsdl” – right click and import the Sales Area WSDL. We will need this in the Sender channel config.

/wp-content/uploads/2016/08/31_08_2016_01_31_54_1026731.png

We will import 2 WSDLS – one for source ( SalesArea.wsdl ) and other for target ( Sales_Area_tgt.wsdl )

Src WSDL – will have 3 fields. SalesOrg / DistrChannel / Division

Tgt WSDL – will have 4 fields SalesOrg / DistrChannel / Division / country . Country will be hard coded in mapping.

Sender SOAP channel :

   /wp-content/uploads/2016/08/31_08_2016_01_29_18_1026732.png

Address :  Specify any logical name like /SalesArea . This will be part of the endpoint which will be generated later.

URL to WSDL : click browse and select SalesArea ( Src WSDL )

Processing settings :

Standard – For Async scnearios

Robust    – For Sync scenarios where the response goes back to sender.

  /wp-content/uploads/2016/08/31_08_2016_01_37_59_1026733.png

Mapping :

Right click on “src.main.resources.mapping” – > new -> other -> HCI -> message mapping.

Select the source and target message in the mapping

/wp-content/uploads/2016/08/31_08_2016_01_45_54_1026734.png.

Complete the one to one mapping and harcode the country code to ‘US’

/wp-content/uploads/2016/08/31_08_2016_01_54_26_1026735.png

‘Console’ will automatically show any errors upon saving the mapping

/wp-content/uploads/2016/08/31_08_2016_01_55_33_1026736.png

Click on the connection between start and end . Then Right click and “Add Message Transformers” -> ” Mapping”

/wp-content/uploads/2016/08/ma_1026737.png

Then right click and assign the mapping u just created

/wp-content/uploads/2016/08/31_08_2016_02_00_13_1026738.png

Gateway config :

Requirement is that the message should go the receiver only when Sales Org = ‘A001’ else it should be terminated without any error / exception.

click on the connection between mapping and end step . Right click “Add message routin” -> “Router”

/wp-content/uploads/2016/08/route_1026739.png

Click on the connection between Gateway and End. Click on properties and put a name like ‘Salesorg’.

Condition expression : /p1:SalesArea/Salesorg=’A001′

/wp-content/uploads/2016/08/31_08_2016_02_11_50_1026740.png

Click on “Gateway” and remove “Raise Alert” and “Throw Exception” .

/wp-content/uploads/2016/08/31_08_2016_02_15_13_1026741.png

End Message :

Click on end message event from right side and drag it inside the Iflow. Then draw the connector between them.

Give the name as “NotSalesOrg” and click on “Default Route”

/wp-content/uploads/2016/08/31_08_2016_02_18_02_1026742.png

Check the namespace mapping :

Goto “Runtime configuration ” and see the right name space mapping is shown there.

/wp-content/uploads/2016/08/31_08_2016_02_20_37_1026743.png

Message persistence :

Click on the line between mapping and gateway and click on message persistece

/wp-content/uploads/2016/08/persist_1026756.png

Deploy the Iflow :

Now right click and deploy your Iflow

/wp-content/uploads/2016/08/31_08_2016_03_42_42_1026757.png

Console shows that the deployment was successful.

/wp-content/uploads/2016/08/31_08_2016_02_25_31_1026745.png

WEBUI :

You can use the tenant url to go the webui -> overview section to monitor / check your Iflows.

/wp-content/uploads/2016/08/31_08_2016_02_28_35_1026746.png

Click on All started

You will be able to see the endpoint and final Iflow. This endpoint should be used in SOAP UI to test.

/wp-content/uploads/2016/08/31_08_2016_02_31_21_1026747.png

View Integration flow – will show the final deployed Iflow

Monitor Message Processing – will be used for monitoring your messages after you test.

Final Iflow :

/wp-content/uploads/2016/08/31_08_2016_03_47_04_1026837.png



SOAP UI testing :

As you can see here endpoint is taken from the webui as previously mentioned. Also specify thee HCI user/pwd as ‘Basic authentication’

This is an Asynchronous scenario and hence no response is seen …only . HTTP  / 1.1 202 Accepted. 

/wp-content/uploads/2016/08/31_08_2016_02_36_21_1026749.png

Monitoring :

Go to web ui – > click on completed messages

/wp-content/uploads/2016/08/31_08_2016_02_39_19_1026750.png

Go to ” Message processing log” . You can see the message is COMPLETED.

/wp-content/uploads/2016/08/31_08_2016_02_41_54_1026751.png

NOTE : This Blog does not show the receiver SFTP config as it follows standard steps. The receiver channel and system have been removed from the Iflow

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

Leave a Reply