Thanks for all your replies. I'm sorry for bring up this issue again. I tried the Drools 5.3.0.Final. For float and double type, I think current behavior is what I need. But for BigDecimal type, when my condition is "bd == 99.9" ("bd" equals new BigDecimal("99.9")), the condition is false. But if I add quotes to the literal as bd == "99.9", the condition will be true. Is this behavior is designed to be so? It seems 99.9 will be considered as double value, while "99.9" will be considered as a BigDecimal value.

Thanks!