Dell Boomi Platform

Image Of Boomi API Management
Introduction of Dell Boomi Platform

There are many integration tools available in the market. Dell Boomi AtomSphere is an on-demand multi-tenant cloud integration platform for connecting cloud and on-premise applications and its data. Dell Boomi makes it possible to integrate applications, data directly from the web by using a visual designer with access to a library of integration of components.

Dell Boomi Platform is an iPaas software. The Platform enables customers to design cloud-based processes called Atoms and transfer data between cloud and on-premise applications. It has more than 125 out of the box connectors for connecting different apps. Boomi specializes in Integration, API Management, Master Data Management, and data preparation.

The, blogs will explain how to create, deploy a Web Service using the Dell Boomi Platform. Steps involved in setting up API and Gateway, External Broker configuration, and testing of the Web Service.

A Web Service is a client-server application or application component for communication between two devices over a network. Considered a use case where the Client sends a request to a Service where it is exposed via API Gateway. The request will be authenticated before reaching Service to get a response for the Client request. 

Different steps involved in this use case are:

  • Develop a Web Service
  • Deploy Web Service application
  • API Management to expose Web Service
  • Modify Shared Web Server Authentication Type
  • Test Service using Boomi API Swagger
  • Configure Gateway using API Key
  • Create a plan for controlling client requests
  • Create an Application and Subscription
  • Test Web Service using API Key
  • Configure External Broker as Gateway
  • Test Web Service for External Broker Authentication

 

Below is a step by step procedure for building/developing a RESTful Web Service in the Boomi Platform.

1.  Create sample XML request file Employee_request.xml and response file Employee_response.xml in a text editor.

Add the following text to the Employee_request.xml file <Employee> <Id>123</Id> </Employee> 

Add the following text to the Employee_response.xml file <Employee_Details> <Emp_Id>123</Emp_Id> <First_Name>Smith</First_Name> <Last_Name>Jones</Last_Name> <Salary>900000</Salary> </Employee_Details>

2.   Login to https://platform.boomi.com

3.   Create a folder Employee under your root folder in the component explorer.

Root

4.   Create a Xml profile for input. Click on the down arrow   prefixed to Employee folder and select New Component

new-component

5.   A Create Component dialog window appears.
Select the Type – Profile.
Enter the component name – Employee_request
Profile Format – XML Click Create.

create component

6.   Click on the Import button.

import Button

7.   A XML import wizard appears.

import Button

8.   Click Choose a file. Select the Employee_request.xml file that was created in step -1. Click Next. It will load the profile. Click Finish.

9.   The Employee_request XML Profile will be loaded, choose Data Type as Number for element Id.
Click Save and Close

10.   Repeat steps 4-9 for the XML output profile.

Please enter the following values in the Create Component dialog window appears.
Select the Type – Profile.
Enter the component name – Employee_response
Profile Format – XML
Import Employee_response.xml file in the JSON import wizard.
The Employee_response profile will be loaded. Choose Data_Type as Number for Emp_Id & Salary.
Click Save and Close.

Response

11.   Create a Component of type Connection and choose connector as Database. Click on the down arrow   prefixed to Employee folder and select New Component

Response

Select the Driver Type – Oracle.
Enter the User Name – xxxxxx
Password – xxxxxxx
Host – localhost
Port – 1521
Database Name – orcl

Response

Click Test Connection and choose localAtom and click on Next.

test-connection

test-connection

 

Note: To get connection successful, place the oracle jar in the below local atom location.
C:\Boomi AtomSphere\localAtom\Boomi AtomSphere\lib on your machine.

12.   Create a Table in Oracle Database with below fields, using SQL developer

CREATE TABLE EMPLOYEE (EMP_ID NUMBER (10), FIRST_NAME VARCHAR2(20), LAST_NAME VARCHAR2(20), SALARY NUMBER (10), PRIMARY KEY (EMP_ID));

Insert a record with details mentioned below

INSERT INTO EMPLOYEE (EMP_ID, FIRST_NAME, LAST_NAME, SALARY) VALUES (123,’Smith’,’Jones’,900000).

13.   Create a Map Component to map the input request values to the output response. Click on the down arrow   prefixed to Employee folder and select New Component
Create Component dialog window appears. Select the Type – Map.
Enter the component name – Map_Id
Click Create.

create

The Map_Id Component gets loaded. Click on Choose to select the source XML Input profile Employee_request for the map

map

Choose a Profile dialog window appears. Select the profile from the folder gets displayed in the Profiles display. Expand the Employee folder and select Employee_request profile. Click Ok.

profile

Choose the profile Employee_response on destination profile of the Map_Id. Click on the image-fluid  to add a Map function.

Add a function dialog window appears. Click on the Category dropdown and select Lookup. Select Functions – SQL Lookup. Click Ok.

map

 

Edit Sql Query as SELECT EMP_ID, FIRST_NAME, LAST_NAME, SALARY FROM EMPLOYEE WHERE EMP_ID=?
Add

AA Input
EMP_ID(Integer)
Add Output
EMP_ID(Integer)
FIRST_NAME(Character)
LAST_NAME(Character)
SALARY(Integer)
Click on Ok.

sql-lookup

Map Employee_Input to EMP_ID and Output elements to Employee_Output as below

emp-input

Click Save and Close

14.   Click on new-button to create an Employee_Details process component. A Create Component dialog appears. Select Type – Process. Component Name Employee_Details. Click Create.

create

15.   A Start Shape window appears. Select Connector – Web Services Server. Click on   in the Operation text field.

operation

Enter the following and Click Save and Close.
OperationName – Employee Details Operation
Operation Type – EXECUTE
Object – employee_details
Expected Input Type – Single XML Object
Request Profile – Employee_request
Response Output Type – Single XML Object
Response Profile – Employee_response
Result Content Type – application/xml

emp-detail

Click Save and Close

16.   Drag Map_Id onto the canvas next to Start Shape. that was created in Step 13. Click Save

17.   Connect Start shape to the Map shape by dragging drag from Start shape onto the

map

Map_Id shape. The red arrow turns into a green arrow confirming that the Start shape is connected to the Map shape. Click Save

map

18.   Drag the Return Documents shape from logic shapes onto the canvas next to the Map_Id shape. Click Ok. Connect Map_Id Shape to the Return Documents Shape. Click Save and Close.

map

 

After developing a process, it is required to package and deploy it in an environment. 

Below is a step by step procedure for deploying a process in the Dell Boomi Platform.

1.   Setup a Local Atom on windows in a TEST environment and verify that it is up and running.

Navigate to Manage -> Atom Management

Click on local atom that you have created (PS-HYD-LP-006 is the local atom that I have created for my testing) and verify that the status of the local atom is online.

map

2.   Open the Employee_Details Process in the process editor and click on Create Packaged Component

packaged-component

3.   Select Employee_Details process and click on Next: Add Details.

select-component

4.   Mention version and enable Sharing and click on Create Packaged Components

 

packaged-components

5.   Click on Deploy

packaged-components

6.   Select Environment and click on Next: Select Version.

select-env

7.   Click on Next: Review Details.

select-env

8.   Review Deployment and click on Deploy.

select-env

9.   Deployment Successful, click on View Deployments to see the deployed process.

deployment-success

10.   Employee_Details process deployed successfully.

deployments

 

In Blog 2, will discuss on changes required on Web Service to expose it as API. It consists of creating a REST endpoint for Web Service, Shared Web Server configuration for authentication purposes. The last section of it will explain the usage of Swagger Utility to test the API service.

<strong>Hari Krishna</strong><br><sub><strong>Practice Head, TIBCO</strong></sub>
Hari Krishna
Practice Head, TIBCO

 

With over 13 years of experience in Architecture, blue prints, Design, Development, performance tuning, administration, testing and implementation on Enterprise Application Integration, Hari Krishna is vital team player at Prowess. 

Hari is a certified TIBCO, DellBoomi and MuleSoft Integration specialist with hands on experience in SOA, B2B integration, web services development. Prior to Prowess, he worked as a Senior Consultant at TIBCO software Inc. He is a quick learner with great technical capabilities and always ready to accept the challenges.