...
Deploy the following proxy service using instructions in Adding a Proxy Service.
Note the property, <property xmlns:m0=" http://services.samples " name="stockprop" expression="$body/m0:getQuote"/> in the configuration. It is used to log the first <m0:getQuote> element of the request SOAP body.Code Block language html/xml <proxy xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <log> <property xmlns:m0="http://services.samples" name="stockprop" expression="$body/m0:getQuote"/> </log> <send> <endpoint> <address uri="http://localhost:9000/services/SimpleStockQuoteService"/> </endpoint> </send> </inSequence> <outSequence> <send/> </outSequence> </target> <description></description> </proxy>
Send the following StockQuote request using the sample StockQuote client. For For information on working with the sample client, refer to the see Using the Sample Clients sub heading in Setting Up the ESB Samples.
Code Block language xml ant stockquote -Daddurl=http://localhost:8280/services/StockQuoteProxy
Note the following message in the ESB log.
Code Block [2013-03-18 14:04:41,019] INFO - LogMediator To: /services/StockQuoteProxy, WSAction: urn:getQuote, SOAPAction: urn:getQuote, ReplyTo: http://www.w3.org/2005/08/addressing/anonymous, MessageID: urn:uuid:930f68f5-199a-4eff-90d2-ea679c2362ab, Direction: request, stockprop = <m0:getQuotexmlns:m0="http://services.samples"><m0:request><m0:symbol>IBM</m0:symbol></m0:request></m0:getQuote>
...
Deploy the following proxy service using instructions in Adding a Proxy Service .
Note the property, <property xmlns:wsa=" http://www.w3.org/2005/08/addressing " name="stockprop" expression="$header/wsa:To"/> in the configuration. It is used to log the value of wsa:To header of the SOAP request.Code Block language html/xml <proxy xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <log> <property xmlns:wsa="http://www.w3.org/2005/08/addressing" name="stockprop" expression="$header/wsa:To"/> </log> <send> <endpoint> <address uri="http://localhost:9000/services/SimpleStockQuoteService"/> </endpoint> </send> </inSequence> <outSequence> <send/> </outSequence> </target> <description></description> </proxy>
Send the following StockQuote request using the sample StockQuote client. For For information on working with the sample client, refer to the see Using the Sample Clients sub heading in Setting Up the ESB Samples.
Code Block language xml ant stockquote -Daddurl=http://localhost:8280/services/StockQuoteProxy
Note the following message in the ESB logthe log.
Code Block [2013-03-18 14:14:16,356] INFO - LogMediator To: http://localhost:9000/services/SimpleStockQuoteService, WSAction: urn:getQuote, SOAPAction: urn:getQuote, ReplyTo: http://www.w3.org/2005/08/addressing/anonymous, MessageID: urn:uuid:8a64c9cb-b82f-4d6f-a45d-bef37f8b664a, Direction: request, stockprop = http://localhost:9000/services/SimpleStockQuoteService
...
Deploy the following proxy service using instructions in Adding a Proxy Service.
Note the property, <property name="stockprop" expression="$axis2:REST_URL_POSTFIX"/> in the configuration which is used to log the REST_URL_POSTFIX value of the request message.Code Block language html/xml <proxy xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <log> <property name="stockprop" expression="$axis2:REST_URL_POSTFIX"/> </log> <send> <endpoint> <address uri="http://localhost:9000/services/SimpleStockQuoteService"/> </endpoint> </send> </inSequence> <outSequence> <send/> </outSequence> </target> <description></description> </proxy>
Send the following StockQuote request using the sample StockQuote client. For For information on working with the sample client, refer to the see Using the Sample Clients sub heading in Setting Up the ESB Samples.
Code Block language xml ant stockquote -Daddurl=http://localhost:8280/services/StockQuoteProxy/test/prefix
Note the following message in the ESB logthe log.
Code Block INFO - LogMediator To: http://localhost:8280/services/StockQuoteProxy/test/prefix, WSAction: urn:getQuote, SOAPAction: urn:getQuote, ReplyTo: http://www.w3.org/2005/08/addressing/anonymous, MessageID: urn:uuid:ecd228c5-106a-4448-9c83-3b1e957e2fe5, Direction: request, stockprop = /test/prefix
...
Deploy the following proxy service using instructions in Adding a Proxy Service.
Note the property, <property name="stockerrorprop" expression="$ctx:ERROR_MESSAGE"/> in the fault sequence configuration. It is used to log the error message that occurs due to a mediation fault.Code Block language html/xml <proxy xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <send> <endpoint key="ep2"/> </send> </inSequence> <outSequence> <send/> </outSequence> <faultSequence> <log> <property name="stockerrorprop" expression="$ctx:ERROR_MESSAGE"/> <property name="Cause" expression="get-property('ERROR_MESSAGE')"/> </log> </faultSequence> </target> <description></description> </proxy>
Send the following StockQuote request using the sample StockQuote client. For information on working with the sample client, refer to the see Using the Sample Clients sub heading in Setting Up the ESB Samples.
Code Block language xml ant stockquote -Dtrpurl=http://localhost:8280/services/StockQuoteProxy
Note the following message in the ESB logthe log.
Code Block INFO - LogMediator To: /services/StockQuoteProxy, WSAction: urn:getQuote, SOAPAction: urn:getQuote, ReplyTo: http://www.w3.org/2005/08/addressing/anonymous, MessageID: urn:uuid:54205f7d-359b-4e82-9099-0f8e3bf9d014, Direction: request, stockerrorprop = Couldn't find the endpoint with the key : ep2
...
Deploy the following proxy service using instructions given in section Adding a Proxy Service.
Note the property, <property name="stockprop" expression="$trp:Content-Type"/> in the configuration, which is used to log the Content-Type HTTP header of the request message.
Code Block language html/xml <proxy xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <log> <property name="stockprop" expression="$trp:Content-Type"/> </log> <send> <endpoint> <address uri="http://localhost:9000/services/SimpleStockQuoteService"/> </endpoint> </send> </inSequence> <outSequence> <send/> </outSequence> </target> <description></description> </proxy>
Send the following StockQuote request using the sample StockQuote client. For For information on working with the sample client, refer to the see Using the Sample Clients sub heading in Setting Up the ESB Samples.
Code Block language xml ant stockquote -Daddurl=http://localhost:8280/services/StockQuoteProxy
Note the following message in the ESB log.
Code Block [2013-03-18 12:23:14,101] INFO - LogMediator To: http://localhost:8280/services/StockQuoteProxy, WSAction: urn:getQuote, SOAPAction: urn:getQuote, ReplyTo: http://www.w3.org/2005/08/addressing/anonymous, MessageID: urn:uuid:25a3143a-5b18-4cbb-b8e4-27d4dd1895d2, Direction: request, stockprop = text/xml; charset=UTF-8
...
Create a REST API with the following configuration using instructions given in page Working with APIs.
Code Block language xml <api xmlns="http://ws.apache.org/ns/synapse" name="Editing" context="/editing"> <resource methods="GET" uri-template="/edit?a={symbol}&b={value}"> <inSequence> <log level="full"> <property name="SYMBOL" expression="$url:a"></property> <property name="VALUE" expression="$url:b"></property> </log> <respond></respond> </inSequence> </resource> </api>
Send a request to the REST API you created using a browser as follows:
Code Block language xml http://10.100.5.73:8280/editing/edit?a=wso2&b=2.4
You will see the following in the ESB logthe log:
Code Block language xml LogMediator To: /editing/edit?a=wso2&b=2.4, MessageID: urn:uuid:36cb5ad7-f150-490d-897a-ee7b86a9307d, Direction: request, SYMBOL = wso2, VALUE = 2.4, Envelope: <?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body></soapenv:Body></soapenv:Envelope>
...
Add a sequence template with the following configuration. See Adding a New Sequence Template for detailed instructions.
Code Block language xml <template xmlns="http://ws.apache.org/ns/synapse" name="HelloWordLogger"> <sequence> <log level="full"> <property xmlns:ns2="http://org.apache.synapse/xsd" xmlns:ns="http://org.apache.synapse/xsd" name="message" expression="$func:message"></property> </log> </sequence> </template>
Deploy the following proxy service using instructions given in section Adding a Proxy Service .
Code Block language xml <proxy xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <call-template target="HelloWorldLogger"> <with-param name="message" value="HelloWorld"/> </call-template> <log/> </inSequence> <outSequence> <send/> </outSequence> <endpoint> <address uri="http://localhost:9000/services/SimpleStockQuoteService"/> </endpoint> </target> <description/> </proxy>
Send the following StockQuote request using the sample StockQuote client. For For information on working with the sample client, refer to the see Using the Sample Clients sub heading in Setting Up the ESB Samples.
Code Block language xml ant stockquote -Daddurl=http://localhost:8280/services/StockQuoteProxy
Note the following message in the ESB log.
Code Block language xml LogMediator To: http://localhost:8280/services/StockQuoteProxy, WSAction: urn:getQuote, SOAPAction: urn:getQuote, ReplyTo: http://www.w3.org/2005/08/addressing/anonymous, MessageID: urn:uuid:8d90e21b-b5cc-4a02-98e2-24b324fa704c, Direction: request, message = HelloWorld
...