When do variables persist? - ANSWER Variables persist through all flows unless the event crosses a transport boundary (e.g. making a http request to another flow)
T/F: Subflows can have their own error handling strate
...
When do variables persist? - ANSWER Variables persist through all flows unless the event crosses a transport boundary (e.g. making a http request to another flow)
T/F: Subflows can have their own error handling strategy - ANSWER False
Syntax to fetch a variable - ANSWER #[vars.foo]
What persists when calling from a parent flow to another flow via http request? - ANSWER Not variables
API Interface definition file (API Specification) - ANSWER defines what you call, what you send it, and what you get back
A Web Service - ANSWER The Actual API implementation you can make calls to or interface of that API implementation
An API Proxy - ANSWER An application that controls access to the web service, restricting access, and usage through an API gateway
What persists when calling from a parent flow to another flow via flow reference? - ANSWER Variables
JMS connector - ANSWER connector capable of sending and receiving messages to and from topics and queues
JMS Publish - ANSWER Operation that allows the user to send a message to a JMS Destination
JMS Publish - Consume - ANSWER Operation that allows the user to send a message to a JMS Destination and waits for response either to the provided replyTo destination or to a dynamically created
Language for Choice Decisions - ANSWER dataweave
#[payload.size != 0]
Execution order of functions - ANSWER the last function in the chain is executed first
Calling flows from a DW Expression - ANSWER use the lookup function
{a: lookup("myFlow",{b:"Hello"})}
How to import a function in a module - ANSWER import dasherize from dw::core::Strings
How to import a module - ANSWER import dw::core::Strings
You can call subflows from a dataweave expressions - ANSWER false
map - ANSWER Iterates over items in an array and outputs the results into a new array.
Scatter gather output - ANSWER returns a collection of all results, collection is an object of objects
each object contains attributes and payload
validation module - ANSWER can use to check whether something has or not been met and you can halt the flow if that condition has not been met
Mule defualt error handler - ANSWER used if no error handler defined
implicitly and globally handles all messaging errors thrown in Mule applications
stops execution of the flow and logs information about the error
cannot be configured
Error object properties - ANSWER error.description = string
error.errorType = an object
Error types - ANSWER identified by a namespace and an identifier
example:
http:unauthorized
ns ident
Most general error type parent - ANSWER ANY
Default success response from HTTP Listener - ANSWER the payload
a status code of 200
Default error repsonse from HTTP Listeners - ANSWER error description
a status code of 500
On Error Propogate - ANSWER at the end of the scope the rest of the flow is not executed
the error is rethrown to the next level and handled there
HTTP Listener returns an error response
On Error Continue - ANSWER at the end of the scope the rest of the flow is not executed
the event is passed up to the next level as if the flow execution had completed successfully
HTTP Listener returns asuccessful response
Error scope execution order - ANSWER the error is handled by the first error scope whose condition evaluates to true
Handling errors at a processor level - ANSWER Try Scope to encapsulate the processors you want to have a try catch
On Error Propogate behavior in try catch - ANSWER rest of try scope is not executed
transaction is rolled back
error is rethrown
On Error Continue behavior in try catch - ANSWER Rest of the try scope is not executed
transaction is committed
event is passed up to the parent flow which continues
APIKIT Routing flow - ANSWER BaD request 400
not found 404
method not allowed 405
not acceptable 406
unsupported media type 415
not implemented 501
To map to a custom error type - ANSWER go to the http request, look at error mapping and map the corresponding error to the custom error type, which then can be referenced by the type field in the type field of error scope handling
Messaging error - ANSWER thrown when a mule event is involved. These errors can be handled using the standard error handlers and scopes
System Error - ANSWER thrown when a mule event IS NOT involved. These type of errors occur during start up or when a connection to an external system fails. These errors are handled by the system error handling strategy and cannot be configured. For all types of system errors, logs the error. For connection type errors, logs and also executes the reconnection strategy for the specific connector (set in advanced settings)
Data model can consist of what types if data - ANSWER Objects, arrays, simple literals
XML details - ANSWER Can only have one top level value and that value must be an object with on property
map input - ANSWER can be JSON or JAVA
Format date - ANSWER someDate as DateTime {format: "yyyyMMddHHmm"}
Format string/num - ANSWER price as Number as String {format: "###.00"}
Connectors for working with files - ANSWER File (for locally mounted file system)
FTP
FTPS
SFTP
All have the same set of operations and they behave almost identically
JMS Queues - ANSWER A sender sends messages to a queue and a single receiver pulls the message off the queue
the receiver does not need to be listening to the queue at the time the message is sent
(point to point or 1:1)
JMS Topics - ANSWER A publisher and all active subscribers receive the message
subscibers not actively listening will miss the published message (unless messages are made durable)
(publish/subscribe or 1:many)
Batch job variables - ANSWER variables created before a batch step are record specific
variables created inside a batch step are record specific
Record fails in batch step - ANSWER Stop processing entire batch (default)
continue processing the batch
continue processing the batch until a max number of failed records is reached
C4E - ANSWER Companies need a way to introduce processes and manage change to make sure that IT projects don't proliferate in the shadows. At the same time, they must keep the road smooth for innovation throughout the business. It is possible, believe it or not, for these seemingly irreconcilable goals to co-exist.
GET - ANSWER retrieves the current state of a resource in some representation
POST - ANSWER creates a new resource
DELETE - ANSWER Deletes a resource
PUT - ANSWER replaces a resource completely
if the resource doesnt exist a new one is created
PATCH - ANSWER partially updates a resource
200 - ANSWER OK
GET DELETE PATCH PUT
201 - ANSWER CREATED
POST
304 - ANSWER Not modified
PATCH PUT
400 - ANSWER BAD Request
all
401 - ANSWER unauthorized
all
404 - ANSWER Resource not found
All
500 - ANSWER Server Error
All
Mule Message - ANSWER the data that passes through flows in the app
Attributes - ANSWER metadata contained in the message header
payload - ANSWER the core info of the message the data the app processes
Variables - ANSWER metadata for the mule event - can be defined and referenced in the app processing the event
Resources - ANSWER the objects identified by the web service URL that you want to act upon using the HTTP method for the request
all resources begin with a slash
Advantages of CloudHub - ANSWER No hardware
Continuous software updates
provided infrastructure for DNS and load balancing
high availability 99.99% uptime SLAs
Highly Secure
built in elastic scalability for increasing cloud capacity during periods of high demand
Advantages of Mule Runtime - ANSWER easy to install
requires minimal resources
can run multiple applications
uses a java service wrapper that controls the JVM operating system and stats mule
API Gateway - ANSWER a runtime designed and optimized to host an API or to open a connection to an API deployed to another runtime
included as part of the mule runtime but separate licenses required
/FLIGHTS/3 - ANSWER URI PARAM
/FLIGHTS?COLOR=BLUE - ANSWER queryParam
VM Connectors/Queues - ANSWER Can be used to communicate inter and intra applications through asynchronous queues
can be transient vs persistant (fast vs slow, lost in crash vs reliable)
uses operations to publish and or consume messages
Domain prohect - ANSWER can be used to share global configuration elements between applications which lets you:
ensure consistency between applciations upon any changes
expose multiple services
share the connection to persistent storage
call flows in other applications using the vm connector
only available for customer hosted mule runtimes
src/test/resources - ANSWER only put things that are needed at development time
What MuleSoft API-led connectivity layer is intended to expose part of a backend database without business logic? - ANSWER System
What statement is part of MuleSoft's description of an application network? - ANSWER Creates reusable APIs and assets designed to be consumed by other business units
According to MuleSoft, what is the Center for Enablement's role in the new IT operating model? - ANSWER Creates and manages discoverable assets to be consumed by line of business developers
What is a core characteristic of the Modern API? - ANSWER API is designed first using an API specification for rapid feedback
What HTTP method in a RESTful web service is typically used to completely replace an existing resource? - ANSWER PUT
Process Layer - ANSWER The underlying business processes that interact and shape this data should be strictly encapsulated independent of the source systems from which that data originates
Experience Layer - ANSWER are the means by which data can be reconfigured so that it is most easily consumed by its intended audience, all from a common data source, rather than setting up separate point-to-point integrations for each channel.
System Layer owner - ANSWER Central IT
System Layer Frequency of Changes - ANSWER 6-12 mths
Process Layer Owner - ANSWER Central IT and Line of Business IT
Process Layer frequency of changes - ANSWER 3-6 Months
Experience Layer Frequency of Changes - ANSWER 4-8 Weeks
Experience Layer Owner - ANSWER Line of Business IT and Application Developers
What is the main purpose of flow designer in Design Center? - ANSWER To design and develop fully functional Mule applications in a hosted development environment
Where does a deployed flow designer application run in Anypoint Platform? - ANSWER CloudHub Worker
What MuleSoft product enables publishing, sharing, and searching of APIs? - ANSWER Anypoint Exchange
What asset can NOT be created using Design Center? - ANSWER API Portals
A web client submits a GET request to a Mule 4 application to the endpoint /customers?id=48493.
Where is the id stored in the Mule event by the HTTP Listener? - ANSWER Attributes
An API has been created in Design Center. What is the next step to make the API discoverable? - ANSWER Publish the API to Anypoint Exchange
A RAML example fragment named BankAccountsExample.raml is placed in the examples folder in an API specification project.
What is the correct syntax to reference the fragment? - ANSWER examples: !include examples/BankAccountsExample.raml
What is the purpose of the api:router element in APIkit? - ANSWER Validates requests against RAML API specifications and routes them to API implementations
What is the minimum required configuration in a flow for a Mule application to compile? - ANSWER An event processor
A Database connector is configured to select rows from a MySQL database.
What is the format of the array of results returned from the database query? - ANSWER Java
What is NOT part of a Mule 4 event? - ANSWER Inbound Properties
How does APIkit determine the number of flows to generate from a RAML specification? - ANSWER Creates a separate flow for each HTTP method
What is the purpose of API autodiscovery? - ANSWER Allows a deployed Mule application to connect with API Manager to download policies and act as its own API proxy
How many Mule applications can run on a CloudHub worker? - ANSWER At most one
What does an API proxy application NOT do? - ANSWER Determine which response Mule event is allowed to pass through to the API backend service
What does the Mule runtime use to enforce policies and limit access to APIs? - ANSWER The Mule runtime's embedded API Gateway
API Manager has been configured to enforce an SLA policy and the RAML spec has been updated with the required client_id and client_secret header requirements.
The new RAML spec has been published to Anypoint Exchange.
What is the next step to gain access to the API? - ANSWER Request access to the API in Anypoint Exchange
What happens to the attributes of a Mule event in a flow after an outbound HTTP Request is made? - ANSWER Attributes are replaced with new attributes from the HTTP Request response (which might be null)
A web service implements an API to handle requests to http://acme.com/customers/{state}.
A web client makes a request to this API implementation at http://acme.com/customers/CA.
What is the correct DataWeave expression to retrieve the value CA? - ANSWER #[attributes.uriParams.state]
A flow contains an HTTP Listener as the event source. What is the DataWeave expression to log the Content-Type header using a Logger component? - ANSWER #["Content-Type: " ++ attributes.headers.'content-type']
What is NOT part of a Mule 4 event? - ANSWER Outbound Properties
A Mule application has two flows named parentFlow and childFlow. The childFlow begins with an HTTP Listener.
A variable is defined in parentFlow, then an HTTP Request is made to childFlow's HTTP Listener with some headers set.
What is the scope of the variable and attributes in the parentFlow after childFlow returns a response? - ANSWER The variable is accessible. All the attributes passed to childFlow are removed or replaced.
A Mule application has a flow named parentFlow.
The parentFlow contains an HTTP Request operation at the end of the flow. The parentFlow also contains a Set Variable operation right before the HT
[Show More]