%dw 2.0
%output application/json
---
{
name:"Peter",
age:"42"
}
MongoDB Examples - Mule 4
MongoDB Connector Version 6.0
Invoke an Operation
To invoke a simple operation, such as the Insert Document operation, follow these steps:
-
In Studio, click HTTP and drag the Listener operation to the canvas.
-
From the palette, select MongoDB and drag the Insert Document operation into your flow by placing it to the right of HTTP Listener.
-
Configure the connector by selecting the Connector Configuration you created in the previous section, choosing the operation to invoke, and setting the Collection name.
-
From the palette, drag the Transform Message component to the left of MongoDB Connector.
-
Click Transform Message and enter two key-value pairs:
-
From the Mule Palette view, drag other Transform Message components to the right of MongoDB Connector.
-
Click Transform Message and set the output to
application/json
:%dw 2.0 output application/json --- payload
XML for Invoke an Operation
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:mongo="http://www.mulesoft.org/schema/mule/mongo"
xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/mongo
http://www.mulesoft.org/schema/mule/mongo/current/mule-mongo.xsd">
<configuration-properties file="mule-app.properties" />
<http:listener-config name="HTTP_Listener_config"
doc:name="HTTP Listener config">
<http:listener-connection host="0.0.0.0"
port="8081" />
</http:listener-config>
<mongo:config name="MongoDB_Config" doc:name="MongoDB Config">
<mongo:connection database="${database}">
<mongo:server-addresses >
<mongo:server-address host="${host}" port="${port}"/>
</mongo:server-addresses>
</mongo:connection>
</mongo:config>
<flow name="create-mongo-record-flow" >
<http:listener
config-ref="HTTP_Listener_config" path="/create"
doc:name="Listener" />
<ee:transform doc:name="Set Payload and Document Content">
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
output application/json
---
{
name:"Pity",
age:"31"
}]]></ee:set-payload>
</ee:message>
</ee:transform>
<mongo:insert-document config-ref="MongoDB_Config"
doc:name="Insert document"
collectionName="${collection}" />
<logger level="INFO" doc:name="Logger"
message="New document: #[payload]" />
</flow>
</mule>