`
softlife
  • 浏览: 105846 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Drools客户端配置及调用

阅读更多
Drools客户端配置
1.引入jar包:
drools-api-5.0.1.jar
drools-core-5.0.1.jar
mvel2-2.0.10.jar
2.java程序调用规则:
// rule.properties是drools配置文件默认放在项目src下(后面讲解此配置文件)
RuleAgent agent = RuleAgent.newRuleAgent("/rule.properties");
RuleBase rb = agent.getRuleBase();
// caculateScore.caculateScore规则中:【包名.方法】//包:指服务器左边树上包名
FactType appType = rb.getFactType("caculateScore.caculateScore");
Object application = appType.newInstance();
//设置参数
appType.set(application, "param1", param1);
appType.set(application, "param2", param2);

rb.newStatelessSession().execute(new Object[] { application});
//规则返回值: returnItem指的是规则中返回的变量名称
Object o = appType.get(application, "returnItem");
d = ((Integer)o).doubleValue();

3. rule.properties文件讲解:
文件名称:rule.properties
文件内容:
##
## RuleAgent 配置文件示例,使得drools采用pull(拉)模式工作,RuleAgent自动搜索服务器端规则是否更新。
##

# true:意思是如果规则变化则自动更新。
newInstance=true

#二进制格式的规则文件路径,用空格分隔多个文件。
#file=/foo/bar/boo.pkg /foo/bar/boo2.pkg

#指定规则文件存放路径。
#dir=/my/dir

#指定BRMS中的二进制格式规则文件。用空格分隔不同的url地址.
#此url有两种配置方式:、

#配置1.配置如下:
url=url=http://localhost:6080/drools-guvnor/org.drools.guvnor.Guvnor/package/caculateMoney/LATEST
#此地址是从glassfish部署的drools服务器中的规则自定义caculateMoney包中取得的。
 
#其中包括三个url.
#①drl地址,即我们写的规则文件地址。下载到本地为:packagename.drl(包名.drl)
#②pkg地址。下载到本地为:packagename.pkg(包名.pkg,即二进制文件)
#③不清楚。

#配置2.配置如下
##url= http://localhost:6080/drools-guvnor/caculateMoney.pkg
#此时需要把caculateMoney.pkg从第②个地址上下载下到本地。放到localCacheDir
#指定的目录下面。
#
#规则文件缓冲存放路径。此目录下放*.pkg文件。
#如果用第1种方法配置那么不用配置*.pkg文件。Drools会自动根据url地址生成一个文件到此目录下。
#如果用第2种方法配置则需要把*.pkg文件(例如:caculateMoney.pkg)复制到#localCacheDir指定的目录下面。

localCacheDir=c:/itour/cache

#规则文件自动刷新的时间间隔. 如果没有设置,那么需要手工更新。
#poll=30


#本配置文件的名称,记录日志时使用。
name=MyConfig
分享到:
评论
3 楼 wuche2012 2012-12-26  
xiaokang1582830 写道
请教java.io.IOException: Server returned HTTP response code: 401 for http://localhost:7001/guvnor/org.drools.guvnor.Guvnor/package/jack/LATEST URL是怎么回事?

你可以用用urlResource,然后加上用户名和密码,默认都是admin admin.
2 楼 xiaokang1582830 2012-11-06  
请教java.io.IOException: Server returned HTTP response code: 401 for http://localhost:7001/guvnor/org.drools.guvnor.Guvnor/package/jack/LATEST URL是怎么回事?
1 楼 wuche2012 2012-09-29  
楼主啊,为什么我的会报空指针呢,求解答啊。
newInstance=true
url=http://localhost:5555/TestDrools/Sample.drl
localCacheDir=D:/rulecache
name=TollRule

相关推荐

Global site tag (gtag.js) - Google Analytics