drools 6.4.0 和spring集成
来源:互联网 发布:最好wifi密码破解软件 编辑:程序博客网 时间:2024/06/03 10:36
这几天在研究规则引擎 然后使用了drools 不过这方面的资料实在是少的头疼,经过几天的摆弄,终于和spring集成上了。
spring-drools.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:kie="http://drools.org/schema/kie-spring" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://drools.org/schema/kie-spring https://raw.github.com/droolsjbpm/droolsjbpm-integration/master/kie-spring/src/main/resources/org/kie/spring/kie-spring-6.0.0.xsd"> <!--没有org.kie.spring.KModuleBeanFactoryPostProcessor bean定义,KIE Spring集成将不工作。--> <!-- 每5分钟扫描是否有新版本文件 enableScanner表示是否扫描 scannerInterval表示扫描间隔--> <kie:import releaseId-ref="sptringweb" enableScanner="true" scannerInterval="12000" /> <!--这里我使用 drools workbench 生成的--> <kie:releaseId id="sptringweb" groupId="org.hc" artifactId="wkk" version="LATEST"/> <bean id="kiePostProcessor" class="org.kie.spring.annotations.KModuleAnnotationPostProcessor" /> <kie:kmodule id="kmodule" > <!-- 起名规范就可以 --> <kie:kbase name="PointDomainKB" packages="test.drools.drools"><!-- 起名规范就可以 packages=/指到最后一层文件夹/ --> <kie:ksession name="PointDomainKS" type="stateless"> <!-- 起名规则就可以,这个的name 是要在下面的测试类中用到的 --> </kie:ksession> </kie:kbase></kie:kmodule></beans>
junit
@KSession("PointDomainKS") @KReleaseId(groupId = "org.hc", artifactId = "wkk", version = "LATEST") private KieSession kieSession; @Test public void snapshot() throws InterruptedException { PointDomain pointDomain = new PointDomain(); pointDomain.setBirthDay(true); kieSession.insert(pointDomain); kieSession.fireAllRules(); }
workbench 配置
我在官网下载 Tomcat 7+ WAR http://download.jboss.org/drools/release/6.4.0.Final/kie-drools-wb-distribution-wars-6.4.0.Final-tomcat7.war
一、添加依赖包
1.btm-2.1.4.jar
2.btm-tomcat55-lifecycle-2.1.4.jar
3.h2-1.3.168.jar
4.jboss-jacc-api_1.4_spec-1.0.3.Final.jar
5.jta-1.1.jar
6.kie-tomcat-integration-6.3.0.Final.jar
7.slf4j-api-1.7.7.jar
8.mysql-connector-java-5.1.38.jar
二、修改D:\tomcat7\webapps\kie-drools\WEB-INF\classes\META-INF目录下的persistence.xml文件
把该项目原来使用的H2Dialect改成MySQL5Dialect
<properties> <!--property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/--> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect"/> <property name="hibernate.max_fetch_depth" value="3"/> <property name="hibernate.hbm2ddl.auto" value="update"/> <property name="hibernate.show_sql" value="false"/> <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.BTMTransactionManagerLookup"/> <property name="hibernate.id.new_generator_mappings" value="false"/> </properties>
三、
在tomcat的conf目录下增加一个文件名为:btm-config.properties的文件
bitronix.tm.serverId=tomcat-btm-node0 bitronix.tm.journal.disk.logPart1Filename=${btm.root}/work/btm1.tlog bitronix.tm.journal.disk.logPart2Filename=${btm.root}/work/btm2.tlog bitronix.tm.resource.configuration=${btm.root}/conf/resources.properties
四、在tomcat的conf目录下增加一个文件名为:resources.properties的文件
resource.ds1.className=bitronix.tm.resource.jdbc.lrc.LrcXADataSource resource.ds1.uniqueName=jdbc/jbpm resource.ds1.minPoolSize=10 resource.ds1.maxPoolSize=20 resource.ds1.driverProperties.driverClassName=com.mysql.jdbc.Driver resource.ds1.driverProperties.url=jdbc:mysql://192.168.0.101:3306/drools?useUnicode=true&characterEncoding=UTF-8 resource.ds1.driverProperties.user=kie resource.ds1.driverProperties.password=aaaaaa resource.ds1.allowLocalTransactions=true
五、在tomcat的conf目录下修改context.xml
派生到我的代码片
<Resource name="jdbc/jbpm" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.0.101:3306/drools?useUnicode=true&characterEncoding=UTF-8" username="kie" password="aaaaaa" maxActive="20" maxIdle="1" maxWait="5000" />
六、在tomcat的conf目录下修改server.xml(记得一定要在上部加入)
七、在tomcat的conf目录下修改tomcat-users.xml
<user username="kie" password="kie" roles="admin,manager,manager-gui"/>
这里需要注意的就是数据库链接地址和用户名和密码了 一定要填对
只要启动成功 会自动在指定的库中建立表结构。
输入url 进入登陆界面
登陆进去之后点击
然后再
新建项目填写信息。
之后新建DRL文件和java对象()
之后点击
构建成功后会有相应提示。
之后点击
会看到自己写的项目
然后点击刚构建好的pom 打开复制下面两句话 放入自己的pom.xml里
然后引入drool 相关的jar包 即可
这样就和spring集成完毕。
我在集成中遇到的问题就一个配置好的pom 下载jar的时候缺用户名密码错误
原因是因为我电脑中又两个maven 一个是系统自带的,一个是我自己装的 我在自己装的里面配置了guvnor-m2-repo 的用户名密码 但是没在系统自带的里面配置 然后就下不下jar包 我也查了很多资料 应该是drool 回去找我本机自带的maven 然后我在自带的maven 的settings里配置了用户名密码就ok了
- drools 6.4.0 和spring集成
- drools和spring的集成
- drools和spring的集成
- spring 和 drools 整合
- Drools与Spring集成 登录测试
- Drools与Spring集成 登录测试
- Drools与Spring集成 登录测试
- Drools与Spring集成 登录测试
- Drools与Spring集成 登录测试
- Drools的另类用法--模板使用,以及与Spring集成
- spring 整合 drools
- eclipse集成drools规则引擎
- 集成Spring和Axis
- JSF和Spring集成
- JSF和Spring集成
- JSF和Spring集成
- 集成JSF和Spring
- JSF和Spring集成
- curl使用笔记
- *二叉树的基本操作(递归实现)*
- 窗台板用什么石材好
- ping pgrep pkill
- [刷题]算法竞赛入门经典(第2版) 4-6/UVa508 - Morse Mismatches
- drools 6.4.0 和spring集成
- 数据持久化 plist,CoreData,Sqlite
- [转]ReactiveCocoa入门教程:第一部分
- win下给 Git Bash 添加私钥时ssh-add报错的解决办法
- Eclipse 快捷键 大全
- mark
- JS组件系列——表格组件神器:bootstrap table(三:终结篇,最后的干货福利)
- 读《狼道》有感
- mysql性能优化之explain