[Drools规则引擎]Drools6.5.0+eclipse4.6.2+Jdk1.7+Tomcat1.7环境部署

前言

一个Demo跑起来好费劲,环境不清,总是遇到这样那样的问题,譬如以下几个问题:

1. value '1.8' is not a valid language level错误
2. Unsupported major.minor version 51.0

所以,本篇文章开题便说明环境依赖:

Drools 6.5.0 http://www.drools.org/download/download.html
eclipse Neon.2 Release (4.6.2)
jdk1.7.0_79
apache-tomcat-7.0.68
Mysql 5.6.22
Win10

安装包准备

1)下载6.5.0.Final

http://www.drools.org/download/download.html下载6.5.0.Final
这里写图片描述

2)安装eclipse插件

解压以下两个压缩包:
这里写图片描述

在eclipse/dropins目录下新建两个目录:Drools/pluginDrools-jbpm
这里写图片描述

  • 将解压后的drools-distribution-6.5.0.Final/binaries文件夹下的所有Jar包拷贝到Drools/plugin目录下
  • 将解压后的droolsjbpm-tools-distribution-6.5.0.Final\binaries\org.drools.updatesite文件夹下的features、plugins拷贝到Drools-jbpm目录下

    这里写图片描述

启动eclipse,打开配置【Windows】—【 preferences】,如果有drools选项,说明前面的操作是OK的。
这里写图片描述

配置运行时

按图示操作
这里写图片描述

这里写图片描述

然后点击ok,勾选后,点击Apply->OK,至此,drools的eclipse环境就配置好啦。
然后重启eclipse。

安装Workbench

kie-drools-wb-6.5.0.Final-tomcat7.war
给Tomcat7的lib目录下用的jar文件,其中包括:
    btm-2.1.4.jar
    btm-tomcat55-lifecycle-2.1.4.jar
    h2-1.3.168.jar
    jta-1.1.jar
    kie-tomcat-integration-6.2.0.Final-javadoc.jar
    kie-tomcat-integration-6.3.0.Final.jar
    log4j-api-2.1.jar
    log4j-core-2.1.jar
    log4j-slf4j-impl-2.1.jar
    slf4j-api-1.7.7.jar
    slf4j-log4j12-1.7.7.jar
    数据库驱动(mysql-connector-java-5.1.38.jar)

以上12个依赖文件如果读者一时搜不到,不要紧我都把它们上传在此了:droos6.5.0在tomcat布署时的依赖包.zip

开始安装

  1. 把下列文件全部copy至tomcat的lib目录下
    这里写图片描述
  2. 解压kie-drools-wb-6.5.0.Final-tomcat7.war,并改名成kie-drools-wb后拷贝至tomcat的webapps目录下。

  3. 修改tomcat\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"/>
      <!-- BZ 841786: AS7/EAP 6/Hib 4 uses new (sequence) generators which seem to cause problems -->
      <property name="hibernate.id.new_generator_mappings" value="false"/>
 </properties>

4.在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

5.在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://127.0.0.1:3306/drools?useUnicode=true&amp;characterEncoding=UTF-8
resource.ds1.driverProperties.user=root
resource.ds1.driverProperties.password=123456
resource.ds1.allowLocalTransactions=true

**注意:**resource.ds1.driverProperties.url中的&字符,否则会报错:

对实体 “characterEncoding” 的引用必须以 ‘;’ 分隔符结尾

6.在tomcat的conf目录下修改context.xml
增加如下内容:

<Resource name="jdbc/jbpm" auth="Container" type="javax.sql.DataSource" 
            driverClassName="com.mysql.jdbc.Driver" 
        url="jdbc:mysql://127.0.0.1:3306/drools?useUnicode=true&characterEncoding=UTF-8" 
        username="root" 
        password="123456" 
        maxActive="20" 
        maxIdle="1" 
      maxWait="5000" />

7.在tomcat的conf目录下修改server.xml
在host标签内增加如下内容:

<Valve className="org.kie.integration.tomcat.JACCValve" />  

8.在tomcat的conf目录下修改tomcat-users.xml
增加以下内容,该用户用于访问drools kie:

<role rolename="admin"/>
<role rolename="analyst"/>
<user username="tomcat" password="tomcat" roles="admin,analyst"/>

9.在mysql中建立一个数据库,名为drools
10.在tomcat的bin目录下新建setenv.bat文件:

set TOMCAT_HOME="E:\Development\apache-tomcat-7.0.68"
set CATALINA_OPTS="-Dbtm.root=%TOMCAT_HOME% -Dbitronix.tm.configuration=%TOMCAT_HOME%/conf/btm-config.properties -Djbpm.tsr.jndi.lookup=java:comp/env/TransactionSynchronizationRegistry -Djava.security.auth.login.config=%TOMCAT_HOME%/webapps/kie-drools-wb/WEB-INF/classes/login.config -Dorg.jboss.logging.provider=jdk"

注意:修改TOMCAT_HOME目录
11. 修改tomcat的bin目录下的catalina.bat文件,增加配置:

setlocal

set JAVA_OPTS=%JAVA_OPTS% -server -Xms1024m -Xmx1024m -XX:MaxNewSize=512m -XX:PermSize=256m -XX:MaxPermSize=512m

注意:
不配置JAVA_OPTS会报错:java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler

启动Kie

执行startup.bat启动tomcat:

这里写图片描述

打开一个IE,输入如下地址:http://127.0.0.1:8080/kie-drools-wb即可看到kie-drools-wb的主界面了。

如果遇到问题,可以给我留言~

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
好的,关于Drools规则引擎的Docker部署,我可以提供以下步骤: 1. 下载Drools Workbench镜像 在终端中执行以下命令,下载Drools Workbench镜像: ``` docker pull jboss/drools-workbench-showcase:latest ``` 2. 运行Drools Workbench容器 将Drools Workbench运行在Docker容器中,执行以下命令: ``` docker run -p 8080:8080 -d --name drools-workbench jboss/drools-workbench-showcase:latest ``` 其中,`-p`参数指定容器端口和宿主机器端口的映射关系,`-d`参数指定容器在后台运行,`--name`参数指定容器名称。 3. 访问Drools Workbench 在浏览器中访问`http://localhost:8080/drools-workbench`,即可进入Drools Workbench。 除此之外,您还可以将Drools规则引擎集成到自己的应用程序中,然后使用Docker部署该应用程序。具体步骤如下: 1. 编写Drools应用程序 编写Drools应用程序,并将其打包成可执行的JAR文件。 2. 创建Docker镜像 在Drools应用程序目录下创建Dockerfile文件,编写Docker镜像构建脚本,并执行以下命令构建Docker镜像: ``` docker build -t drools-app:latest . ``` 其中,`-t`参数指定Docker镜像名称和标签,`.`表示Dockerfile文件所在的当前目录。 3. 运行Docker容器 执行以下命令,在Docker容器中运行Drools应用程序: ``` docker run -p 8080:8080 -d --name drools-app drools-app:latest ``` 其中,`-p`参数指定容器端口和宿主机器端口的映射关系,`-d`参数指定容器在后台运行,`--name`参数指定容器名称。 希望这些信息能够帮助到您,如果您还有其他问题,请随时提出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TechGenius

文章很值,请作者喝一杯咖啡吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值