在讲述依赖关系时,我们引入了,在workbench中如何设置kiesession等功能,这里我们就详细的说明一下:
首先,这个kieserver还有知识库,我们应该在哪修改呢。很简单,打开项目编辑器:
通过上图,我们打开知识库和会话
然后我们进行会话的说明:
知识会话有两种状态,与之前讲的规则引擎中的是一个的,分别是stateless无状态的stateful有状态的。默认值可勾选,但最好是勾选一个。在后面的kie-server中会用到。这里kie-server 先不做介绍。接着我们上面的说,名称不重复就可以,添加完成后点击右上边的保存。我们就可以在kmodule.xml 中看到设置的值啦。
这一段代码是不是很眼熟,这就是我们之前讲的 在kmodule.xml中所使用的值。
那如何测试我们写的这个知识库和会话起作用呢。我们可以通过自动扫描或者测试场景进行验证。例如:
@KSession("jars2kession") 自动扫描
private KieSession jars2kession;
但在测试场景中我们要注意一点的时,知识会话是必须设置成一个stateful有状态的才能正常运行。由此我们可以得出,在workbench中默认的kiesesion 也是有状态的。
使用workbench+kie-server时, 如果我们插入(newInsert(Object))的话, 可能产生如下效果:
解决该问题的方法:因为我们一般会将workbench项目中的kie-session 设置成为有状态的,在kie-server里就会导致上述的问题,所以我们要将kiesession设置无状态的,释放facthandle
下面是小编的微信转帐二维码,小编再次谢谢读者的支持,小编会更努力的
----请看下方↓↓↓↓↓↓↓
百度搜索 Drools从入门到精通:可下载开源全套Drools教程
深度Drools教程不段更新中:
更多Drools实战陆续发布中………
扫描下方二维码关注公众号 ↓↓↓↓↓↓↓↓↓↓