0
我正在使用將映射xml文件映射到映射數組的數據映射器。雖然記錄我得到的結果如下:Mule - java.lang.ClassCastException:java.util.LinkedHashMap不能轉換爲java.util.List
[{Name=xyz, Salary=30000, Tax=1000}, {Name=BOS, Salary=200, Tax=75}]
從上面生成的地圖,我試圖插入值到數據庫基於where子句。我的查詢看起來是這樣的:
UPDATE employee SET Salary =#[message.payload[0]['Salary']] WHERE name = #[message.payload[0]['Name']]
在這裏我得到的例外它看起來像:
java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to java.util.List
at org.mvel2.optimizers.impl.refl.nodes.ListAccessor.getValue(ListAccessor.java:40)
at org.mvel2.optimizers.impl.refl.nodes.GetterAccessor.getValue(GetterAccessor.java:40)
at org.mvel2.optimizers.impl.refl.nodes.VariableAccessor.getValue(VariableAccessor.java:37)
+ 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
在使用#登錄[message.payload [0] [ '工資']我正確地得到了與它相關的值。但查詢中的同一個表達式對我來說不起作用。
等待您的答覆。
謝謝。
那麼沒關係,但我米仍然困惑,爲什麼#[message.payload [0] ['工資']]不起作用。在記錄器中,它給了我關鍵「薪水」的正確值。 –