Another comparison between HCI and Boomi: SOAP

Regarding the amount of feedback I received on my first comparison between HCI and Boomi (blog), I decided to compare some more features of both middleware solutions. This time I want to show you a SOAP activity done in Boomi and in HCI. First I will show you how to create the complete iFlow in Boomi. After that I will use the same format to show you how it’s done in HCI.

If there are things you would like to see in the future, please let me know in the comments section below!

Setting up the SOAP client in Boomi

First of all we are going to set up the SOAP client. We’ll need a connection to the Web service and create a request and response profile.

We are starting in Boomi by creating a new process. We’re going with the ‘No Data’ start shape, because we want to enter our data (the City and Country for our weather request) manually.

01 Boomi.png

To set up the soap connection we select the ‘Connector’ icon and choose ‘Web Services SOAP Client’, Leave the Action on EXECUTE and select the plus symbol right after ‘Connection’. Here we are going to set up the WSDL and SOAP endpoint URL

02 Boomi.png

WSDL Url: http://www.webservicex.net/globalweather.asmx?WSDL
SOAP Endpoint Url:
http://www.webservicex.net/globalweather.asmx?



After you set both URL’s you can Save and Close this SOAP connection, so we can create the SOAP operation.

Click on the plus button next to the operation and, in the operation screen, choose ‘Import’ (the green box, in the upper right of your screen). Make sure you select the Connection we just created (in this case SOAP weather) and choose ‘Next’. If you entered the settings correctly you should get a new screen where you can choose the object type. Go for ‘GetWeather’ and choose ‘Next’.

03 Boomi.png

04 Boomi.png

We now have the Start shape and the SOAP connection on our process canvas.

06 Boomi.png

Create input data and mapping in Boomi

When you analyse the Request profile we have just imported, you see the SOAP Web service expects a CityName and a CountryName. This is data we are going to enter directly into the flow, but you can also use other (employee)systems to gather this data for example. Drag and drop a ‘Message’ icon onto your canvas. In the ‘Message’ we enter the CityName followed by the CountryName, separated by an asterisk. Of course you can choose other countries and cities for this iFlow.

07 Boomi.png

This is the data that we will send over to the Web service. But we need to let the Web service know that this is CityName and CountryName, and deliver it in a format that the service expects (XML).

To do so, drag and drop a mapping icon onto your canvas. Choose ‘Create new’ and select the icon on the Source side of the mapping (left).

08 Boomi.png

We want to create a new Flat File, because the data we entered in the ‘Message’ step is formatted in a Flat File.

09 Boomi.png

We have to create two Elements so I choose ‘Add Multiple Elements’ and select 2. Name the Elements so it is clear what the elements stand for, in this case ‘City’ and ‘Country’.

10 Boomi.png

On the Destination side of the mapping (right), select the same icon as before, but now choose XML as Profile type. Choose the XML profile we imported in the first step named “Web Services SOAP Client GetWeather EXECUTE request”

11 Boomi.png

After that you can map the source (left side) to the destination (right side) so the Web service gets the format it expects.

12 Boomi.png

Finishing up and review results in Boomi

We now have a no-data start shape, a message icon, mapping and a connection. We want to enter a ‘Stop’ icon so we can review our test later on. Make sure your iFlow looks like this:

13 Boomi.png

Save your iFlow and run it as a test. If all went well you should see five green halo’s around the icons.

14 Boomi.png

Select the ‘Stop’ icon and view the ‘Shape Source Data’, your output should look something like this

15 Boomi.png

As you can see we received the weather for Rotterdam Airport Zestienhoven in the Netherlands.

16 Boomi.png

Now we have done a simple SOAP Webservice call in Boomi, let’s go over to HCI and see how it’s working there!

 

Setting up the SOAP client in HCI

01 HCI.png

When starting a new project in HCI we get a sender, a receiver and an Integration Process. As we do not need a Sender we can delete that immediately.
We do need an extra receiver to address our SOAP Web service. Add a receiver and drag and drop ‘Service Call’ icon onto the canvas. Draw a line from the request/reply button to the receiver so your flow looks like this:

02 HCI.png

Double click the dotted line to enter the details. We are choosing SOAP as the adapter type, HTTP as the transfer protocol and SOAP 1.x as the Message protocol.

03 HCI.png

When going into the Adapter Specific tab we notice that we are missing the ‘URL’ to the WSDL. We have to import the WSDL into Eclipse (go to  http://www.webservicex.net/globalweather.asmx?WSDL , download the page as a .wsdl file and drag it into your “src.main.resources.wsdl” folder in your project).

Now we can point the system to out WSDL and click ‘Browse’.


04 HCI.png

Then double click on globalweather and in the next screen choose GetWeather (GlobalweatherSoap)

05 HCI.png

The configuration for the SOAP service is now ready:

06 HCI.png

Create input data and mapping in HCI

HCI handles the input a bit different. Here we don’t create a mapping to tell what kind of value every expected field has, but we enter the XML in a content modifier before sending it out. Then, the response is exactly the same as we saw in Boomi. Let’s drag and drop a `Content Modifier’ to the canvas and go to the properties tab.

07 HCI.png

Enter the following XML in your body:

<ns2:GetWeather xmlns:ns2=”http://www.webserviceX.NET“>

<ns2:CityName>Rotterdam</ns2:CityName>

<ns2:CountryName>Netherlands</ns2:CountryName>

</ns2:GetWeather>

Finishing up and reviewing the results in HCI

I placed a dummy receiver so we can see the output when tracing this iFlow. To be able to trace the call after we deployed it we need to change the Trace Configuration. Left click on an empty space on your canvas and go to the properties tab. Choose Header and Body and save you iFlow.

08 HCI.png

(tip: don’t forget to ‘schedule’ your start event!)

When you successfully deploy your iFlow to your tenant

09 HCI.png

You can choose to trace your flow by clicking the ‘View Trace’ button when you select the right row.

10 HCI.png

When selecting the envelope on the right, and check the Properties tab we can see the same data as we saw in Boomi:

11 HCI.png

But what about the HCI webUI?

At the moment of writing this blog there is no option to trace the log like you can in Eclipse. Because I wanted to use the log to show the results I’ve chosen to make the flow in Eclipse. For the sake of good comparison I will also make the flow in webUI and cover it briefly:

Log in to your webUI HCI environment and choose Design

01 web.png

Click ‘Create’ and then ‘Add’ Process Integration.

02 web.png

Name your project and your Process Integration and click on the newly created Process (I named mine SOAP blog 7):

03 web.png

Choose ‘Edit’ (bottom right of your screen) and create the same iFlow like we did in Eclipse. When you’re done it looks somewhat like this:

04 web.png

Deploy the iFlow and go to the monitoring section of the webUI

When the iFlow is set up correctly, you get the status completed and in this case the output by mail:

 

Conclusion

Despite missing the trace functionality you can definitely see and feel that the HCI webUI has been developed further and further. The layout has changed, the feeling is good and the interface is reacting very smoothly. These are some things that are missing in Eclipse. There are some weird and unexplainable errors, and the precision of the mouse pointer sometimes drives me crazy. For example, if you just miss the receiver when dragging a new connection it will not connect. The same thing when trying to add a static value in a mapping.

In Boomi they recently upgraded the ‘Test run’. Instead of a maximum of 10 documents/10 MB you now have the ability to test 100 documents/100MB. I think this is a nice upgrade and the result is that you can test more before really deploying your iFlow.

I’m really enjoying working with Boomi ánd HCI. If the HCI webUI keeps developing in this pace I’m sure the future will be bright for HCI.

bob@nextmoves.nl

Blog 1: Starting with Hana Cloud Integration? Keep this in mind!
Blog 2: Starting with Hana Cloud Integration? Create a simple integration flow (iFlow)!
Blog 3: Deep dive in Hana Cloud Integration.
Blog 4: Hana Cloud Integration and SuccessFactors Integration Center
Blog 5: Hana Cloud Integration in comparison to Dell’s Boomi.

Blog 6: What does HCI, Rat Verlegh and Breda Beer have in common?

To report this post you need to login first.

2 Comments

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

  1. Bhargava krishna Talasila

    Hi Bob,

    Nice document.. 🙂

    Do we have flexible tracing functionality in Boomi?

    Can we monitor the interfaces as we did it in HCI / PI in Boomi?

    It will be great if you can post one blog by comparing both Boomi and HCI [Technical / Functionality].

    Regards

    Bhargava Krishna

    (0) 
    1. B. Van Rooij Post author

      Hi Bhargava,

      thank you for your reply. You can do extended tracing in Boomi, but it involves custom scripting.

      I will try to write another one about the tracing functionality in Boomi and HCI, thank you for your input!

      (0) 

Leave a Reply