我们如何访问 mule EE jdbc-ee 查询中的有效载荷值?
How can we access payload value in mule EE jdbc-ee query?
问题出在插入查询上,只有两个步骤 1) select 来自表 1 的值 2) 将这些值插入表 2。
此处#[map-payload:ID] 在 jdbc mule CE 中工作正常,但在 jdbc-ee mule EE 中却不行。
下面是我的代码,
<flow name="allflows_dev_eeFlow">
<poll doc:name="Poll">
<fixed-frequency-scheduler frequency="3000"/>
<db:select config-ref="Generic_Database_Configuration" doc:name="Database1">
<db:parameterized-query><![CDATA[SELECT * from table1]]></db:parameterized-query>
</db:select>
</poll>
<db:insert config-ref="Generic_Database_Configuration" doc:name="EBS Database">
<db:parameterized-query><![CDATA[INSERT INTO table2 (ID, Company, Status) VALUES (#[map-payload:ID], #[map-payload:Company], #[map-payload:Status])]]></db:parameterized-query>
</db:insert>
<logger message="Order1 #[payload[0].ID] #[map-payload:ID]" level="INFO" doc:name="Logger"/>
</flow>
不要使用 map-payload:
:它是旧的且已弃用的表达式求值语言。改用 MEL,即:
<db:parameterized-query><![CDATA[INSERT INTO table2 (ID, Company, Status)
VALUES (#[message.payload[0].ID], #[message.payload[0].Company], #[message.payload[0].Status])]]>
</db:parameterized-query>
问题出在插入查询上,只有两个步骤 1) select 来自表 1 的值 2) 将这些值插入表 2。
此处#[map-payload:ID] 在 jdbc mule CE 中工作正常,但在 jdbc-ee mule EE 中却不行。
下面是我的代码,
<flow name="allflows_dev_eeFlow">
<poll doc:name="Poll">
<fixed-frequency-scheduler frequency="3000"/>
<db:select config-ref="Generic_Database_Configuration" doc:name="Database1">
<db:parameterized-query><![CDATA[SELECT * from table1]]></db:parameterized-query>
</db:select>
</poll>
<db:insert config-ref="Generic_Database_Configuration" doc:name="EBS Database">
<db:parameterized-query><![CDATA[INSERT INTO table2 (ID, Company, Status) VALUES (#[map-payload:ID], #[map-payload:Company], #[map-payload:Status])]]></db:parameterized-query>
</db:insert>
<logger message="Order1 #[payload[0].ID] #[map-payload:ID]" level="INFO" doc:name="Logger"/>
</flow>
不要使用 map-payload:
:它是旧的且已弃用的表达式求值语言。改用 MEL,即:
<db:parameterized-query><![CDATA[INSERT INTO table2 (ID, Company, Status)
VALUES (#[message.payload[0].ID], #[message.payload[0].Company], #[message.payload[0].Status])]]>
</db:parameterized-query>