How to pass query parameters
with HTTP Binding in IBM Integration Designer:-
Scenario:-
“Get Product Info HTTP Service ” retrieves product info from database based on product id
For example if you see below SOAP UI
screenshot ,
If you observe URL
(http://localhost:9082/ProcuctInfo_ProviderWeb/ProductInfo_ProviderExport?pid=M786)
,product id passed through URL instead of body ,Response got from database
Now ,how can we implement HTTP client service for Get
Product Info HTTP Service in IID
- How to invoke a HTTP Service from IID?
- How to convert client request to query parameters and Prepare target URL?
HTTP Client Module in IID:-
If
you observe below Assembly diagram, it have mediation flow and HTTP
Import configured with URL without query parameter.
If you go to mediation flow ,Used "HTTPHeaderSetter
primitive" to construct URL with query parameters
Using DynamicOverrideURL
in "HTTPHeaderSetter Primitive " constructed the url ,here product id (which comes in request) set
dynamically using Xpath as query parameter. Please see below
Move DynamicOverrideURL
to SMOHeader/target/address using mapping primitive.
Make sure
"use dynamic endpoint if set in the message header" checked
for service invoke
Testing Using Integration Test Client:
Request:
Response:
Hope this
post helps you. So far this is my best effort to explain. Please correct me if
I do anything wrong.
Please post any issues/query’s related to IBM Bluemix,IBM BPM,WODM and DATAPOWER to "maheshitsolutions@gmail.com”.
Please post any issues/query’s related to IBM Bluemix,IBM BPM,WODM and DATAPOWER to "maheshitsolutions@gmail.com”.
Please
share your valuable suggestions and feedback to my mail id"maheshitsolutions@gmail.com" to improve myself without
fail.