ProDev Slides DEC2020
ProDev Slides DEC2020
Dell, EMC, Dell EMC, Dell Boomi, AtomSphere and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be
trademarks of their respective owners.
OBJECTIVES
By the end of this course, you should be able to:
2. Integration Packs
• Allows integration pack users to customize
by setting extension values.
Process Extensions: Use Case
host: prod.db.com
user: User1
password: Password1
port: 3306
Prod DB
host: dev.db.com
user: User2
password: Password2
port: 3300
Dev DB
Process Extensions: Setup
1. Activate extensions and define extensible components within process
Process Extensions: Setup
1. Activate extensions and define extensible components within process
2. Deploy process to the Environment
Process Extensions: Setup
1. Activate extensions and define extensible components within process
2. Deploy process to the Environment
3. Configure Environment extensions
How do Extensions work?
• Extensions are defined per process
• When Common components (e.g., Connection) are referenced by multiple
processes, EACH process must extend that component
Process Extensions in Parent/Child Processes
Child process called are deployed as part of the Child process are not deployed as part of the parent.
parent:
• Extensions set in the Parent process only applied
• If extensions are part of the parent, the to Parent process
extensions are applied to the parent and child
Do not Extend
connect to connection Create a
the wrong changed placeholder
endpoint fields
Extensions are configurable via which of the
following
#1) Deploy Process to Env(s), #2) Configure Env Extensions, #3) Enable
A Extensions & Define Extensible Components within Process
#1) Configure Env Extensions, #2) Enable Extensions & Define Extensible
B Components within Process, #3) Deploy Process to Env(s)
#1) Enable Extensions & Define Extensible Components within Process, #2)
C Deploy Process to Env(s), #3) Configure Env Extensions
#1) Enable Extensions & Define Extensible Components within Process, #2)
D Configure Env Extensions, #3) Deploy Process to Env(s)
Business Use Case for Extensions Activity
Use Extensions to configure log in credentials
Extensions Activity: Overview
Extensions Activity
REST
What is REST?
True
A
False
B
Which of the following are the response types
typically returned by a RESTful web service?
JavaScript
A
XML
B
JSON
C
PHP
D
REST Request Formation
Base URI
• Uniform Resource Identifier (URI)
• Base URI http://api.supplies.com /products /123
• Collection URI
Collection URI
• Element URI
Element URI
URL
A
URI
B
UIT
C
USA
D
In the following request, which most likely represents the ‘base’
URI?
http://api.espn.com/v1/sports/football/nfl/teams/?apikey=r6y6snswpu
api.espn.com/v1/sports/
A
?apikey=r6y6snswpu
B
api.espn.com
C
api.espn.com/v1/sports/football/nfl/teams/
D
AtomSphere’s HTTP Client Connector
Use the HTTP Client Connector to establish REST connectivity
HTTP Client
D
What component of the HTTP Connector contains the
Resource Path, representing the elements that build out
the URI?
Connection
A
Operation
B
When setting a Resource Path element as a replacement
variable, it is defined and brought into the process via the:
Message shape
B
Map
C
Document Property
D
Business Use Case for Activity
• Mobile application developer implementing an interactive app for movie
listings and searches
• User searches for information, results are displayed in the app, and the
user can rent or buy the selected title
• Create and unit test the back-end interface logic for the app
REST Activity: Overview
• Configure the HTTP Client Connector
• Configure the JSON profile, the Decision shape, and create
output
REST Activity: Overview (section 1)
• Visit the iTunes Search App to assemble the Request URI (do not forget
the special characters)
• Open the iTunes Search operation and scroll down to the Resource Path
• Set the &limit to 1
• Save the output
HANDS ON ACTIVITY
Configure the HTTP
Connector
Configure and Test the REST Activity
• Upload your new JSON file
• Add a Data Process shape to split the documents
• Configure the Decision shape to test for a feature-movie
• Test your process
HANDS ON ACTIVITY
Configure and Test the
Rest Activity
SOAP
What is SOAP?
JSON
A
CSV
B
XML
C
PHP
D
The WSDL file describes the methods that are available to the
client application, the endpoint (where to call the web service), and
the format of the XML that is required in order to call the web
service.
True
A
False
B
SOAP Message Structure
SOAP-ENV: Envelope
SOAP-ENV: Header
SOAP-ENV: Body
Attachments
Sample SOAP Request
POST /InStock HTTP/1.1
Host: www.example.org
Content-Type: application/soap+xml; charset=utf-8
<?xml version="1.0"?>
<soap:Envelope Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Header> Header
<m:Trans xmlns:m="http://www.w3schools.com/transaction/"
soap:mustUnderstand="1">234
</m:Trans>
</soap:Header>
</soap:Envelope>
Sample SOAP Response
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: nnn
<?xml version="1.0"?>
<soap:Envelope Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
</soap:Envelope>
A SOAP Web Service
WSDL
Envelope
A
Header
B
Body
C
Attachment
D
Which connector type is used to build out a SOAP web
service connection?
HTTP Client
D
Unlike within the Operation for an HTTP Client (REST) connector,
the web services SOAP Client Operation offers the ability to
dynamically import both the Request and Response profiles.
True
A
False
B
Business Use Case for Activity
• Web developer implementing a weather app that converts
temperature from Celsius to Fahrenheit (or vice versa)
• Create the back-end interface logic between the web service and
the front end displaying the converted temperature
SOAP Activity
• Configure your SOAP Client; import request and response profiles
• Enter value (temperature) into Message shape
• Map the value to XML format
• Call Web Service
• Retrieve the new value from temperature conversion
HANDS ON ACTIVITY
SOAP Activity
Process Call
Process Call Shape
▪ Executes a sub process (Child) within a Process (Parent)
▪ Triggers Child Start Shape to run and optionally pass documents into
Child workflow
• Organize and simplify complex process architecture
Return Documents Shape
Child Process
The Return Documents shape waits for all Documents to
process down paths before executing.
True
A
False
B
Assume a Parent Process utilizes the Process Call shape
to trigger a Child Process. Which of the following is
ALWAYS true?
The Child Process must include at least one Return Document Shape
A
Only the Parent Process needs to be Packaged and Deployed when putting the
B Parent/Child Processes into production
The Parent Process will halt its execution until the Child Process is complete
C
The Parent Process will abort if the Child Process results in error
D
A Parent Process is configured to send a Document to a Child
Process (for further processing) through a Process Call shape.
How should the Start Shape options be configured at the front-end
of the Child Process?
Connector
A
Trading Partner
B
Data Passthrough
C
No Data
D
A Parent Process is configured to trigger a Child Process through
a Process Call shape. No Documents are being passed. How
should the Start Shape options be configured at the front-end of
the Child Process?
Connector
A
Trading Partner
B
Data Passthrough
C
No Data
D
Business Use Case for Activity
• Process incoming CSV customer records
• Determine the status of the customer records
• Convert active CSV customer records to XML and write them to disk.
Write other CSV records to disk
Process Call Activity
PARENT
▪ Add a Process Call shape that sends
incoming documents to a Child
process for evaluation
▪ In Child process: add and label Return
Document shapes based on the status
▪ In Parent process: connect active, CHILD
inactive, and all branches to
corresponding paths
▪ Run Parent process in test mode
HANDS ON ACTIVITY
BEFORE
AFTER
Business Rules Shape Configuration
Price < ‘50’ AND Genre = ‘Computer’ OR Genre = ‘Cloud Based Integration’ OR Genre = ‘Web Programming’
Business Rules Shape Configuration
Inputs can consist of profile elements and functions Inputs can consist of profile elements, doc/process
properties, SQL statements, stored procedures,
connector calls, etc.
Executes rules for every repeating element Only inspects first of any repeating elements
More complex to build Simple to configure
The Business Rules shape is a powerful alternative
to which of the following AtomSphere shapes?
Flow Control
A
Trading Partner
B
Decision
C
Cleanse
D
Conditions within a Business Rule input values. These
Inputs can derive from all of the following except:
Profile Fields
A
Document Logs
B
Static Values
C
Functions
D
Assume a Business Rule’s condition uses a Profile input
consisting of a repeating element. If one of those elements fails
the Business Rule then the entire Document is rejected.
True
A
False
B
Business Use Case for Activity
▪ Athens Books buys used books from other book sellers
▪ Only certain prices and genres are accepted, and then only if inventory is
low
Business Rules Activity
• Replace the Decision shapes with one Business Rules shape
• Configure a Business Rule with Inputs, Conditions, and Detailed Error Messages
• Add a Data Process shape to parse Business Rules Results XML
• Configure the Message shape to handle error messaging
• Send an email message with results
HANDS ON ACTIVITY
True
A
False
B
The ‘Add Cached Data’ feature is found in which of
the following shapes:
Set Properties
A
Map
B
Data Process
C
2
B
5
C
10
D
15
E
Which of the following is NOT an advantage to using the
Try/Catch shape?
Allows you to design advanced logging and processing for failed Documents.
A
Prevents process-level failures in the event that a Document fails so that you
B can act upon it later in your Process flow.
Map
B
Notify
C
Message
D
Business Use Case for Activity
• Purchase Orders (PO) are failing to be processed in AtomSphere
• A batch with three PO’s was halted, so no PO’s were written to the data
store
Try/Catch Activity
• Execute process in Test mode to see errors
• Add Try/Catch shape to catch documents containing errors
• Configure a Message shape to capture detailed errors
• Write detailed error logs to disk for archiving
• Route successful documents down the try path
HANDS ON ACTIVITY
Try/Catch Activity
Error Handling
Error Types
• Process Errors
• Document Errors
• Atom Runtime Errors
No further
processing,
unless Try/Catch
is used
Process Error Causes
• Connector connectivity errors (varies by connector)
• Connector app responses (varies by connector)
• Exception shape – when “Stop a Single Document” is
unchecked
• Unhandled Data Process scripting exceptions
• Incomplete process/component configuration, e.g.,
NullPointer (dev-time fix)
• Connector errors on the Start shape (cannot be caught,
because there are no documents)
Process Error Example
Documents fail in
connector with an
invalid login error.
Documents loaded
from database
query. All further processing
for all documents
stops.
Document Error Impact
Examples
• JVM running out of heap space
• Atom runs out of memory or writable disk space
• The server is disconnected
INSTRUCTOR TO DEMONSTRATE
Customized
Multiple Error Two Single Simple Repair or
Tests Message Branches Test Syntax Reject
Business
Rule
Decision
Cleanse
A Try/Catch resets the Document ID for all documents that flow
down the Try path.
True
A
False
B
This shape has a built-in Error Message function which allows you
to create a customized error message and assign the message to
the Base document property.
Business Rules
A
Decision
B
Exception
C
Cleanse
D
Error Handling Techniques
Technique: Exception Shape
Exception shape
Message is
returned to logs
and events
• Process and documents have not changed, so will not cure many types of
errors
Retry
• Will remedy intermittent connectivity or availability errors in a connector
Considerations • Will remedy intermittent lock-ups in target system
What Trigger setting is needed in the Try/Catch shape to allow a
process level error to be caught and sent down the Catch path?
Document Errors
A
Process Errors
B
All Errors
C
This optional feature must be enabled within the Notify shape to
have the message sent in a User Alert (Email or RSS).
Message Level must be set to Error
A
Enable Events
B
2
B
3
C
4
D
5
E
A Flat File document flows through a Try/Catch shape down the Try path and is transformed
in a Map shape to an XML document and renamed with a Set Properties shape, but fails at a
Salesforce connector. When the document flows down the Catch path it will still be in XML
format and renamed.
True
A
False
B
INSTRUCTOR TO DEMONSTRATE
Error Handling -
Activity 2
Shared Web Server
Event-Based Integration
What is Event-based Integration?
What is Event-based Integration?
• Recommended when processing is in response to irregularly
occurring external events
• Typically not executed on a schedule
• Instead, event-based processes "listen" for the occurrence of
a specific event
• Web Service Publishing is one way to do this
Web Service Publishing
AtomSphere allows you to:
• Turn any integration process into a web service
• Deploy the web service on premise or in the cloud
• Use the Atom's shared web server to accept HTTP and SOAP
requests in real time
• Configure the Web server to control network/security settings
• Publish a WSDL
Web Services Server Connector
True
A
False
B
When configuring the Web Services Server Connector, almost all of the configuration takes
place in the:
Connection
A
Operation
B
AtomSphere has the ability to be a web service or to publish a WSDL
True
A
False
B
When using the Web Services Server
Operation, the API Type needs to be set to
which of the following:
Basic
A
Intermediate
B
Advanced
C
Expert
D
Business Use Case for Activity
• Users enter contact information into an online form
• The application sends the information to the Dell Boomi Web Server
• AtomSphere processes and validates the information and returns the
appropriate responses
• Contact information is sent via email to the appropriate team member
Web Services Integration Activity
• Create a new Operation in the Web Services Server Connector to ‘Create Contact’
• Configure the Decision shape and Mail Operation, then add a Return Documents shape
• Package and Deploy the process
• Configure the Web Service Client to call the listener process
• Call the process, and confirm results
HANDS ON ACTIVITY
Web Services
Integration Activity
THANK YOU.
COPYRIGHTS AND TRADEMARKS
This guide contains proprietary information protected by copyright and/or other legal grounds. The software described in this guide is furnished under a software license or nondisclosure agreement. This software may be used or
copied only in accordance with the terms of the applicable agreement. No part of this guide may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording for any
purpose other than the purchaser’s personal use without the written permission of Boomi, Inc. (“Dell Boomi”).
The information in this document is provided in connection with Dell Boomi products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the
sale of Dell Boomi products. EXCEPT AS SET FORTH IN THE TERMS AND CONDITIONS AS SPECIFIED IN THE LICENSE AGREEMENT FOR THIS PRODUCT, DELL BOOMI (TOGETHER WITH DELL INC. AND ITS DIRECT
AND INDIRECT SUBSIDIARIES) ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL DELL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE,
SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO
USE THIS DOCUMENT, EVEN IF ANY OF THEM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Dell Boomi makes no representations or warranties with respect to the accuracy or completeness of the
contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Dell Boomi does not make any commitment to update the information contained in this
document.
If you have any questions regarding your potential use of this material, contact:
Boomi, Inc.
Boomi, Inc., Legal Department, 1400 Liberty Ridge Drive, Chesterbrook, PA 19087
Trademarks
Copyright © 2020 Boomi, Inc. All rights reserved. Dell, the Dell logo, Dell Boomi, Boomi, AtomSphere, Atom, and AtomSphere Integration Cloud are trademarks of Dell Inc. and/or its subsidiaries in the United States and/or other
countries. Other trademarks and trade names may be used in this document to refer to either the entities claiming the marks and names or their products.