从Guvnor读取brl规则时,Drools Server无法启动

时间:2013-08-29 09:42:20

标签: drools guvnor

我在整合Drools Camel Server和Guvnor方面遇到了麻烦。版本5.5.0

我创建了一个包含POJO的JAR,并在Guvnor中使用它来创建BRL规则(将来不会由技术人员创建)..

问题是,当我启动drools服务器时,它抱怨它无法找到规则导入中定义的类消息。

在Knowledge-servics.xml的配置下面

    <drools:grid-node id="node1" />
    <drools:resource-change-scanner id="res-scanner1" interval="15" enabled="true" />
    <drools:kbase id="kbase1" node="node1" />
    <drools:kagent id="kagent1" kbase="kbase1" new-instance="false">
            <drools:resources>
                    <drools:resource type="PKG" source="http://localhost:8082/guvnor/org.drools.guvnor.Guvnor/package/<mypackage>/LATEST" basic-authentication="enabled" username="admin" 
                            password="admin" /> 
            </drools:resources>
    </drools:kagent>
    <drools:ksession id="ksession1" type="stateless" kbase="kbase1" node="node1" />

这是我在Guvnor的规则

package mypackage 

import mypackage.model.Message 
rule "first" 
dialect "mvel" 
when 
   Message( text == "a" ) 
then 
   Message fact0 = new Message(); 
   fact0.setText( "b" ); 
   insert( fact0 ); 
end 

1 个答案:

答案 0 :(得分:0)

二进制包不包含java类。你有2个选择: 1.-在drools-server类路径中复制POJO jar 2.-您可以以编程方式从Guvnor获取jar(Guvnor通过url公开它)并将其添加到类路径中。

希望它有所帮助,