0
我正在嘗試在Drools上創建一條規則。 我當前的代碼是:流口水搜索地圖值
rule "Test Rule #1"
when
obj1 : MyObject ()
map : ArrayList (size < 1) from collect (HashMap (values (House (windows = 3)))) from obj1.getHouses()
then
// Do something
end
我所試圖做的是:檢查是否有與在HashMap中3個窗口的任何房子。如果沒有// Do something
。 要做到這一點,我試圖訪問obj1.getHouses()這是一個HashMap <字符串,列表<房屋>>。然後我檢查這個HashMap值,並過濾它有3個窗口的房屋。
但是這段代碼有問題。我得到這個錯誤:
Unable to Analyse Expression values (House (windows = 3)): java.lang.Class cannot be cast to org.mvel2.util.MethodStub]
有人可以幫忙嗎? 在此先感謝。
HashMap的外觀如何?該映射值可通過此語法訪問[http://stackoverflow.com/a/9095266/3710490](http://stackoverflow.com/a/9095266/3710490) – Valijon
我的地圖是:HashMap> 。 但我不想搜索特定的密鑰。我需要搜索地圖的所有LinkedLists。該鏈接顯示我如何使用密鑰進行搜索。 –
你可以發佈完整的drools'.drl'文件嗎?似乎有些課程進口是錯誤的... – Valijon