我创建了一个动态Web项目,它也使用drools来提供一些功能。当我将WAR文件放在Tomcat7和服务器中时,drools部分不起作用。
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
在与drools相关的第一行之后,没有任何反应。
在Tomcat7中运行包含drools 5.5.0 Final的项目是否需要一些配置。
请帮帮我。我被严重困住,我是流口水的新手。
答案 0 :(得分:0)
您必须向工作记忆中添加一些事实并执行(触发)规则。查看these examples on GitHub
P.S。可能与Tomcat没有任何关系。尝试首先从命令行应用程序执行规则可能值得。
答案 1 :(得分:0)
您需要检查添加到Web应用程序(WEB-INF / lib)的所有依赖项,确保drools具有所有必需的deps,因为如果没有,它将无法创建知识生成器。大部分时间如果失败是因为您忘记在Web应用程序中添加deps。
答案 2 :(得分:0)
GitHub中的以下项目是一个Web应用程序,包含一些用于验证IBAN的REST样式端点。它使用Drools 5.5来执行评估。
https://github.com/gratiartis/sctrcd-payment-validation-web/
它生成一个.war,可以加载到Tomcat中,并且可以作为一个有用的起点。知识库包含在Spring服务中:
通过如何创建知识库和会话可以帮助您查看代码出错的位置。
作为奖励,您可以使用" mvn tomcat7:run"在Tomcat中运行它。立即测试它。