Refer to the exhibits. In the choice router, the When expression for the domestic shipping route is set to "# [payload= "FR"]". What is the output of logger after the execution of choice router is completed? 
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerD
ExplanationTo compare, DataWeave syntax is #[payload == "FR"]. In this case only one = is used so it will give syntax error. Hence the correct answer is A dataweave syntax error
What is not true about application properties?
-
A
Application properties can be encrypted
-
B
Application properties can be overridden with system properties
-
C
Application properties can be defined in .yaml file only
-
D
Application properties provide easier way to manage configurable values
Reveal answer details
Close answer details
Correct answerC
ExplanationApplication properties can be defined in .yaml or in .properties file. MuleSoft Doc Ref : https://docs.mulesoft.com/mule-runtime/4.3/configuring-properties#supported_files
Refer to the exhibit.  What is the correct syntax to add an employee ID as a URI parameter in an HTTP Listener path?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerC
ExplanationThe path of an HTTP listener can be static, which requires exact matches, or feature placeholders. Placeholders can be wildcards (*), which match against anything they are compared to, or parameters ({param}), which not only match against anything but also capture those values on a URI parameters map. Take the following example paths for three listeners using a configuration that establishes api/v1 as the base path: account/mulesoft/main-contact: only match the exact path request http://awesome-company.com/api/v1/account/mulesoft/main-contact account/{accountId}/main-contact: matches all path requests structured similarly, such as http://awesome-company.com/api/v1/account/salesforce/main-contact, and save salesforce as the value of accountId. account/{accountId}/*: matches all path requests different from main- contact, such as http://awesome-company.com/api/v1/account/mulesoft/users, and save mulesoft as the value of accountId. Mule Ref Doc : https://docs.mulesoft.com/http-connector/1.6/http-listener-ref#paths
Refer to the exhibits.   The Batch Job scope processes the array of strings After the Batch Job scope completes processing the input payload what information is logged by the Logger component? 
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
A Utility.dwl file is located in a Mule project at src/main/resources/modules. The Utility.dwl hie defines a function named pascalize that reformats strings to pascal case. What is the correct DataWeave to call the pascalize function in a Transform Message component? 
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Refer to the exhibits.    The Mule application configures and uses two HTTP Listener global configuration elements. Mule application is run in Anypoint Studio. If the mule application starts correctly, what URI and port numbers can receive web client requests? If the mule applications fails to start , what is the reason for the failure?
-
A
The mule application fails to start There is URL path conflict because both HTTP Listeners are configured with same path
-
B
The mule application start successfully Web client requests can only be received at URI on port 2222 but not on port 3333
-
C
The mule application fails to start because of the port binding conflict as HTTP request also use same port i.e. 3333
-
D
The mule application start successfully Web client requests can be received at URI on port 2222 and on port 3333.
Reveal answer details
Close answer details
Correct answerD
ExplanationIn this case both the flows can start without any error and requests can be received on both ports. Flow names httpListener1 can call other flow using HTTP request without any issues. Hence correct answer is The mule application start successfully Web client requests can be received at URI on port 2222 and on port 3333. Lets check why other options are incorrect 1) The mule application fails to start. There is URL path conflict because both HTTP Listeners are configured with same path ---- This is incorrect as port value is different in both listeners 2) The mule application start successfully. Web client requests can only be received at URI on port 2222 but not on port 3333 --- This is incorrect as there is no reason for not receiving requests on port 3333 3) The mule application fails to start because of the port binding conflict as HTTP request also use same port i.e. 3333 --- Port binding conflict will not happen in this case. It would have if both listener configurations would have been on same port . But that is not the case here. Mule Ref Doc : HTTP Listener Reference - Mule 4 | MuleSoft Documentation
Which Mule component provides a real-time, graphical representation of the APIs and mule applications that are running and discoverable?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerC
ExplanationCorrect answer is Anypoint Visualizer MuleSoft Doc Ref : https://docs.mulesoft.com/visualizer/ Anypoint Visualizer provides a real-time, graphical representation of the APIs, and Mule applications that are running and discoverable. It also displays third-party systems that are invoked by a Mule API, proxy, or application within your application network. The data displayed in the graph is dynamically updated and does not require prior configuration.
Which file is used to define the interface contract to invoke a web service implemented as a SOAP service
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerB
ExplanationWSDL is used to define the contract in case of SOAP . RAML/OAS is used to REST services
Pick the component with which DataWeave is tightly integrated.
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerB
ExplanationDataWeave is the MuleSoft expression language for accessing and transforming data that travels through a Mule app. DataWeave is tightly integrated with the Mule runtime engine, which runs the scripts and expressions in your Mule app. References: https://docs.mulesoft.com/mule-runtime/4.3/dataweave
Question 10
Single choice
Refer to the exhibit. In the execution of the Scatter-Gather, the "steep 1 sec" Flow Reference takes about 1 second to complete, and the "sleep 5 sees" Row Reference takes about 5 seconds to complete. About how many seconds does it take from the time the Scatter-Gather is called until the Set Payload transformer is called? 
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 11
Single choice
Refer to the exhibit.  The Mule application's connectors are configured with property placeholders whose values are set in the config.yaml file What must be added to the Mule application to link the config.yaml file's values with the property placeholders?
-
A
A configuration-properties element in the acme-app xml file
-
B
A dependency element in the pom xml file
-
C
A file-config element in the acrne-app xml file
-
D
A propertiesFile key/value pair in the mule-artifact json file
Reveal answer details
Close answer details
Question 12
Single choice
An API has been created in Design Center. What is the next step to make the API discoverable?
-
A
Publish the API to Anypoint Exchange
-
B
Publish the API from inside flow designer
-
C
Deploy the API to a Maven repository
-
D
Enable autodiscovery in API Manager
Reveal answer details
Close answer details
Correct answerA
ExplanationCorrect answer is Publish the API to Anypoint Exchange Anypoint Exchange makes this possible by making it discoverable in below ways 1) In private exchange for internal developers 2) In a public portal for external developers/clients Here is diagram created by me to help you understand sequence: 
Question 13
Single choice
Why would a Mule application use the ${http.port} property placeholder for its HTTP Listener port when it is deployed to CloudHub?
-
A
Allows CloudHub to automatically change the HTTP port to allow external clients to connect to the HTTP Listener
-
B
Allows CloudHub to automatically register the application with API Manager
-
C
Allows MuleSoft Support to troubleshoot the application by connecting directly to the HTTP Listener
-
D
Allows clients to VPN directly to the application at the Mule application's configured HTTP port
Reveal answer details
Close answer details
Correct answerA
ExplanationThis helps CloudHub to dynamically allocates a port at deployment time. MuleSoft Doc Ref : https://docs.mulesoft.com/mule-runtime/4.3/deploy-to-cloudhub#prerequisites References: https://docs.mulesoft.com/runtime-manager/developing-applications-for-cloudhub
Question 14
Single choice
Refer to the exhibit.  In the execution of the Scatter_Gather, the flow1 route completes after 10 seconds and the flow2 route completes after 20 seconds. How many seconds does it take for the Scatter_Gather to complete?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 15
Single choice
Refer to the exhibit.   The main flow is configured with their error handlers. A web client submit a request to the HTTP Listener and the HTTP Request throws an HTTP:NOT_FOUND error. What response message is returned?' ' What response message is returned?
-
A
APP: API RESOURCE NOT FOUND
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerA
ExplanationCorrect answer is APP: API RESOURCE NOT FOUND ------------------------------------------------------------------------------------------------------------------------- -------------------------- 1) A web client submits the request to the HTTP Listener. 2) The HTTP Request throws an "HTTP:NOT_FOUND" error, execution halts. 3) The On Error Propagate error Handler handles the error. In this case ,HTTP:NOT_FOUND error is mapped to custom error APP:API_RESOURCE_NOT_FOUND. This error processor sets payload to APP:API_RESOURCE_NOT_FOUND. 4) "APP:API_RESOURCE_NOT_FOUND. " is the error message returned to the requestor in the body of the HTTP request with HTTP Status Code: 500 Reference Diagram: 
Question 16
Single choice
A Mule flow has three Set Variable transformers. What global data structure can be used to access the variables?
-
A
-
B
-
C
Mule application properties
-
D
Reveal answer details
Close answer details
Correct answerD
ExplanationMule event is correct answer. Mule event has two parts which are as follows 1) Message (which contains payload and attributes like headers and query/uri parameters 2) Variables 
Question 17
Single choice
According to MuleSoft, what is the Center for Enablement's role in the new IT operating model?
-
A
Implements line of business projects to enforce common security requirements
-
B
Creates and manages discoverable assets to be consumed by line of business developers
-
C
Centrally manages partners and consultants to implement line of business projects
-
D
Implements line of business projects to enforce common security requirements
Reveal answer details
Close answer details
Question 18
Single choice
Refer to the exhibit.  What is the response to a web client request to http://localhost:8081?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 19
Single choice
What path setting is required for an HTTP Listener endpoint to route all requests to an APIkit router?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 20
Single choice
Refer to the exhibits. The Set Payload transformer in the addltem child flow uses DataWeave to create an order object. What is the correct DataWeave code for the Set Payload transformer in the createOrder flow to use the addltem child flow to add a router call with the price of 100 to the order? 
-
A
lookup( "addltern", { price: "100", item: "router", itemType: "cable" } )
-
B
addltem( { payload: { price: "100", item: "router", itemType: "cable" > } )
-
C
lookup( "addltem", { payload: { price: "100", item: "router", itemType: "cable" } > )
-
D
addltem( { price: "100", item: "router", itemType: "cable" } )
Reveal answer details
Close answer details
Question 21
Single choice
Refer to the exhibits. Client sends the request to ClientRequestFlow which calls ShippingFlow using HTTP Request activity. During E2E testing it is found that that HTTP:METHOD_NOT_ALLOWED error is thrown whenever client sends request to this flow. What attribute you would change in ClientRequestFlow to make this implementation work successfully?   
-
A
Change the method attribute value to "*''
-
B
Change the path attribute value to "/api/ship"
-
C
Change the allowed method attributes value to "POST"
-
D
Change the protocol attribute value to "HTTPS"
Reveal answer details
Close answer details
Correct answerC
ExplanationCorrect answer is Change the method attributes value to "POST". It can be fixed in either of the two ways as below. 1) Changing method attribute to POST in ClientRequestFlow 2) Setting allowedMethods as PUT in ShippingFlow (but doesn't fit as question mentions about changing ClientRequestFlow)
Question 22
Single choice
To avoid hard-coding values, a flow uses some property placeholders and the corresponding values are stored in a configuration file. Where does the configuration file's location need to be specified in the Mule application?
-
A
-
B
-
C
The mule-art if act .json file
-
D
Reveal answer details
Close answer details
Correct answerB
ExplanationCorrect answer is A global element When we create a configuration file , that file needs to added as Global Configuration file in Global element. A global element is a reusable object containing parameters that any number of elements in a flow can share. You reference a global element from Anypoint Connectors or components in your Mule application
Question 23
Single choice
Where would you create SLA Tiers for an API?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerB
ExplanationMuleSoft Doc Ref : https://docs.mulesoft.com/api-manager/2.x/policy-mule3-tutorial-manage-an-api#to-add-the-tier Steps to create SLA Tier are as follows: 1) In API Manager, in API Administration, click a version. 2) Check that the API supports resource-level policies: On the API version details page, in Status, click Configure Endpoint, and check that Type is RAML. 3) Choose the SLA Tiers, and click Add SLA Tier. Set up limit on SLA tier
Question 24
Single choice
An SLA based policy has been enabled in API Manager. What is the next step to configure the API proxy to enforce the new SLA policy?
-
A
Add new property placeholders and redeploy the API proxy
-
B
Add new environment variables and restart the API proxy
-
C
Restart the API proxy to clear the API policy cache
-
D
Add required headers to the RAML specification and redeploy the new API proxy
Reveal answer details
Close answer details
Correct answerD
ExplanationCorrect answer is Add required headers to RAML specification and redeploy new API proxy MuleSoft Doc Ref : https://docs.mulesoft.com/api-manager/2.x/tutorial-manage-an-api Steps are as below : Add the Required RAML Snippet SLA-based rate limiting requires adding a RAML or OAS snippet to your API. This procedure demonstrates adding a RAML snippet. Specify the client ID and secret as query parameters. Add a section called traits: at the RAML root level to define query parameters: traits: - client-id-required: queryParameters: client_id: type: string client_secret: type: string Add the client-id-required trait to every method that requires these query parameters: /users: get: is: [client-id-required] description: Gets a list of JSONPlaceholder users. Step 2 : Add the SLA Tier in API Manager Step 3 : Apply the policy and redeploy References: https://docs.mulesoft.com/api-manager/2.x/tutorial-manage-an-api
Question 25
Single choice
A Batch Job scope has five batch steps. An event processor throws an error in the second batch step because the input data is incomplete. What is the default behavior of the batch job after the error is thrown?
-
A
All processing of the batch job stops.
-
B
Event processing continues to the next batch step.
-
C
-
D
Reveal answer details
Close answer details
Correct answerA
ExplanationIn case of an error , batch job completes in flight steps and stops further processing. MuleSoft Doc Ref : Handling Errors During Batch Job | MuleSoft Documentation The default is all processing will stop but we can change it by Max Failed Record field. General -> Max Failed Records: Mule has three options for handling a record-level error: Finish processing, Continue processing and Continue processing until the batch job accumulates a maximum number of failed records. This behavior can be controlled by Max Failed Records. The default value is Zero which corresponds to Finish processing. The value -1, corresponds to Continue processing. The value +ve integer, corresponds to Continue processing until the batch job accumulates a maximum number of failed records
Question 26
Single choice
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?
-
A
#["Content-Type: " ++ attributes.headers.'content-type']
-
B
#["Content-Type: " + headers.'content-type']
-
C
#["Content-Type: " + attributes.headers.'content-type']
-
D
#["Content-Type: " ++ headers.'content-type']
Reveal answer details
Close answer details
Correct answerA
ExplanationOption 1 is the only correct choice due to two reasons. 1) Concatenation is always with ++ sign and not with + sign which makes option 2 and 3 wrong 2) hearders can be accessed with attributes. headers and not with only headers which makes option 4 incorrect
Question 27
Single choice
Refer to the exhibit.  The Mule application Is debugged in Any point Studio and stops at the breakpoint. What is the value of the payload displayed In the debugger at this breakpoint?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 28
Single choice
Refer to the exhibits.  The mule application is debugged in Anypoint Studio and stops at the breakpoint as shown in below exhibit. What is the value of the payload displayed in the debugger at this breakpoint?
-
A
-
B
-
C
-
D
Payload is always empty at the breakpoint
Reveal answer details
Close answer details
Correct answerA
ExplanationSetting Breakpoints To set breakpoints, right-click a building block, then select Toggle Breakpoint. Studio applies a red dot to the building block's icon on the canvas. When you run your application in Debug mode, Studio stops the flow execution at the breakpoint you have set, allowing you to check the Mule Event content in the Mule Debugger View. Mule Ref Doc : Setting Breakpoints | MuleSoft Documentation
Question 29
Single choice
Which of the module is imported automatically in Dataweave scripts?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerA
ExplanationCore (dw::Core) This module contains core DataWeave functions for data transformations. It is automatically imported into any DataWeave script.
Question 30
Single choice
Refer to the exhibits.  What payload and variable are logged at the end of the main flow? 
-
A
-
B
-
C
[[Req5, Req10, Req15, Req20], 5]
-
D
[Req5Req10,Req15Req20, 5]
Reveal answer details
Close answer details
Correct answerB
ExplanationKey thing to note here is that any changes made to payload in for each loop are not available outside for each scope where as variable value updated in for each loop is visible out side for each loop too. In this example , sequence can be described as follows 1) Payload is set to the value [5, 10, 15, 20] 2) Variable is set to the value of 1 3) For each loop is executed four times and in each loop payload value is updated to append "Req" and variable is count is increased by 1 4) Once control comes out of for each , payload changes made within for each are not visible. Hence payload at this point of time is equal to payload available before entering for each loop which was [5, 10, 15, 20]. Similarly variable value updated in for each loop is also available outside hence variable value is 5 as it was updated in loop. 5) Hence correct answer is [[5, 10, 15, 20], 5] For Each Scope The For Each scope splits a payload into elements and processes them one by one through the components that you place in the scope. It is similar to a for-each/for loop code block in most programming languages and can process any collection, including lists and arrays. The collection can be any supported content type, such as application/json, application/java, or application/xml. General considerations about the For Each scope: By default, For Each tries to split the payload. If the payload is a simple Java collection, the For Each scope can split it without any configuration. The payload inside the For Each scope is each of the split elements. Attributes within the original message are ignored because they are related to the entire message. For Each does not modify the current payload. The output payload is the same as the input. For non-Java collections, such as XML or JSON, use a DataWeave expression to split data. Use the Collection field for this purpose.
Question 31
Single choice
Refer to the payload.   The Set payload transformer sets the payload to an object. The logger component's message attribute is configured with the string "Result #["INFO"++ payload]" What is the output of logger when this flow executes?
-
A
-
B
Result INFO{"student":{"name":"Anay","age":6}}
-
C
1. 1. "You called the function '++' with these arguments: 2. 2. 1: String ("INFO") 3. 3: Object ({student: {name: "Anay" as String {class: "java.lang.String"},age: 6 as Numbe...)
-
D
Error : You evaluated inline expression # without ++
Reveal answer details
Close answer details
Correct answerC
ExplanationCorrect answer is as below as concatenation operation works only with string and not with the objects. In this case payload is object. "You called the function '++' with these arguments: 1: String ("INFO") 2: Object ({student: {name: "Anay" as String {class: "java.lang.String"},age
Question 32
Single choice
Refer to the exhibits.  The two Mule configuration files belong to the same Mule project. Each HTTP Listener is configured with the same host string and the port number, path, and operation values are shown in the display names. What is the minimum number of global elements that must be defined to support all these HTTP Listeners?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerC
ExplanationIn this case three configurations will be required each for port 8000, 6000 and 7000. There would be three global elements defined for HTTP connections. Each HTTP connection will have host and port. One example shown below with host as localhost and port 6000  To use an HTTP listener, you need to declare a configuration with a corresponding connection. This declaration establishes the HTTP server that will listen to requests. Additionally, you can configure a base path that applies to all listeners using the configuration. <http:listener-config name="HTTP_Listener_config" basePath="api/v1"> <http:listener-connection host="0.0.0.0" port="8081" /> </http:listener-config> https://docs.mulesoft.com/http-connector/1.6/http-listener-ref#http-listener-configuration
Question 33
Single choice
Refer to the exhibits.  What payload and quantity are togged at the end of the main flow?
-
A
[[order1, order2, order3, order4], 14]
-
B
-
C
-
D
[orderlorder2order3order4, 14]
Reveal answer details
Close answer details
Question 34
Single choice
An app team is developing a mobile banking app. It took them two months to create their own APIs to access transaction information from a central database. The app team later found out that another team had already built an API that accesses the transaction information they need. According to MuleSoft, what organization structure could have saved the app team two months of development time?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerB
ExplanationCenter for Enablement is correct answer .It is a cross-functional team typically staffed with members from central IT, line-of-business departments, and digital innovation teams charged with productizing, publishing, and harvesting reusable assets and best practices. In this case , app team would have checked first with Center for Enablement before developing their own API's. Hence could have avoided re-work
Question 35
Single choice
How we can scale deployed Mule application vertically on cloudhub?
-
A
-
B
-
C
Mule applications can be scaled only horizontally
-
D
Option 1 and 2 both can be used
Reveal answer details
Close answer details
Correct answerA
ExplanationMule applications can be scaled vertically by changing worker size. Mule applications can be scaled horizontally by adding more workers.
Question 36
Single choice
What is the default port used by Mule application debugger configuration in Anypoint Studio?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerD
ExplanationBy default, Debugger listens for incoming TCP connections on localhost port 6666 You can change this in a project's run configuration. MuleSoft Doc Ref : https://docs.mulesoft.com/studio/7.5/visual-debugger-concept
|