drools 规则中规则 "variable name" 的异常执行结果
Exception executing consequence for rule "variable name" in drools rule
我遇到以下异常:
Exception executing consequence for rule "abc" ...
我正在尝试在我的 jsp 文件中传递 statecode(LHS)
值。并检查所选内容是否为 statecode==AS
。
- 如何检查LHS值是否通过?如何在我的控制台中打印
statecode
的值?
- 如何使用 spring 引导将 jsp 中的动态值传递给 drl?
我是 drools 框架的初学者。
我的规则代码是:
package rules
import com.myapp.ApplFormBean
rule "checkstate"
dialect "java"
when
$applbean:ApplFormBean(stateCode=="AS")
then
System.out.println("StateIs: "+$applbean.stateCode);
end
您应该将 Exception 的 完整消息和 ApplFormBean
class 添加到您的问题中。
如果你有 stateCode
的 getter 方法,在这种情况下使用
System.out.println("StateIs: "+$applbean.getStateCode());
在您的 then
声明中。
第二个问题更多地是关于如何编写 Web 应用程序,而不是 Drools 的问题。
您应该这样考虑(作为 MVC 模式):
- 您post将JSP表单发送到服务器端。
- 一个特定的控制器然后处理来自该 JSP 表单的请求。
- 调用 Drools 的服务 API 到 运行 您的规则将是
由控制器调用。
在这个阶段 (Drools service API
) 你可能应该从 kmodule.xml
构建一个 KieSession
object 并插入你想要的对象评估
kieSession.insert(applbean);
最终,控制器将该服务的输出引导至 JSP。
我遇到以下异常:
Exception executing consequence for rule "abc" ...
我正在尝试在我的 jsp 文件中传递 statecode(LHS)
值。并检查所选内容是否为 statecode==AS
。
- 如何检查LHS值是否通过?如何在我的控制台中打印
statecode
的值? - 如何使用 spring 引导将 jsp 中的动态值传递给 drl?
我是 drools 框架的初学者。
我的规则代码是:
package rules
import com.myapp.ApplFormBean
rule "checkstate"
dialect "java"
when
$applbean:ApplFormBean(stateCode=="AS")
then
System.out.println("StateIs: "+$applbean.stateCode);
end
您应该将 Exception 的 完整消息和 ApplFormBean
class 添加到您的问题中。
如果你有 stateCode
的 getter 方法,在这种情况下使用
System.out.println("StateIs: "+$applbean.getStateCode());
在您的 then
声明中。
第二个问题更多地是关于如何编写 Web 应用程序,而不是 Drools 的问题。
您应该这样考虑(作为 MVC 模式):
- 您post将JSP表单发送到服务器端。
- 一个特定的控制器然后处理来自该 JSP 表单的请求。
- 调用 Drools 的服务 API 到 运行 您的规则将是 由控制器调用。
在这个阶段 (Drools service API
) 你可能应该从 kmodule.xml
构建一个 KieSession
object 并插入你想要的对象评估
kieSession.insert(applbean);
最终,控制器将该服务的输出引导至 JSP。