I am trying to fetch ID from the table. Here I tried with DBLookup, DSS & DataserviceCall Mediators but not getting the expected result always returning wrong result.
Below are the DBLookup approach,
<dblookup description="Database">
<connection>
<pool>
<dsName>DBConfig</dsName>
</pool>
</connection>
<statement>
<sql><![CDATA[
SELECT id AS MI_ID FROM MessageInstances WHERE sourceIdentity = ? AND hubMessageID = ?;
]]></sql>
<parameter value="******" type="VARCHAR"/>
<parameter expression="get-property('HUBMessageID')" type="VARCHAR"/>
<result column="MI_ID" name="MI_ID"/>
</statement>
</dblookup>
<property name="failureMI_ID" expression="$ctx:MI_ID" scope="default"/>
<log level="custom">
<property name="Message" expression="fn:concat($ctx:HUBMessageID,' : MDF no SQS ID failureMI.ID = ',$ctx:MI_ID)"/>
</log>
WSO2 Log,
[343][2024-05-29 22:44:12,289] INFO {LogMediator} – Message = d2955504-8979-42da-8f42-907d320896aa : MDF no SQS ID failureMI.ID = 1601
Actual Query output in MySQL
enter image description here