问题:
在drools中使用mvel表达式语言的时候,报出了如下错误 Error: unable to resolve method using strict-mode: ,很明显在默认情况下使用了strict-mode即严格模式,在什么情况下回报出这样的错误呢,比如:参数是String类型,你传了一个Object类型(即便它本来是String 类型)
Unable to Analyse Expression Risk risk = new Risk();
risk.setUuid($uuid);
risk.setRuleType(2);
risk.setScore(100);
risk.setRuleName("测试");
risk.setRulePackageName("测试");
drools.insert(risk);:
[Error: unable to resolve method using strict-mode: com.trusfort.risk.base.obj.Risk.setUuid(java.lang.Object)]
[Near : {... risk.setUuid($uuid); ....}]
当然你也可以选择强制类型转换,但是实际上其实没有必要。这个时候可以通过启动参数关闭strict-mode
-Ddrools.dialect.mvel.strict=false