声明:安装手册使用的安装包为 kie-drools-wb-6.5.0.Final-tomcat7.war,
下载链接为 https://download.jboss.org/drools/release/6.5.0.Final/kie-drools-wb-6.5.0.Final-tomcat7.war 。
拷贝下面的依赖包到 TOMCAT_HOME/lib 目录,可通过Maven仓库查找并下载:
注意: 依赖包的版本可以不同,列出的只是写文档时的实际版本.
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
bitronix.tm.2pc.warnAboutZeroResourceTransactions=false
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.cj.jdbc.Driver
resource.ds1.driverProperties.url=jdbc:mysql://localhost:3306/drools?useUnicode=true&characterEncoding=UTF-8
resource.ds1.driverProperties.user=root
resource.ds1.driverProperties.password=123456
resource.ds1.allowLocalTransactions=true
注意:此处需要在数据库里面创建一个名称为 drools 的库。
<Resource name="jdbc/jbpm" auth="Container"
type="javax.sql.DataSource" driverClassName="com.mysql.cj.jdbc.Driver"
url="jdbc:mysql://localhost:3306/drools?useUnicode=true&characterEncoding=UTF-8"
username="root" password="123456" maxActive="20" maxIdle="1" maxWait="5000"/>
将下载好的 war 包在 tomcat/webapps 目录下进行解压缩,并指定解压缩路径为 kie-drools-wb,Linux下命令如下:
unzip kie-drools-wb-6.5.0.Final-tomcat7.war -d kie-drools-wb
将默认的 H2Dialect 修改为我们需要的 MySQL5Dialect
原始:
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
修改为:
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect"/>
在 TOMCAT_HOME/bin 下创建 setenv.sh (or setenv.bat),并将下面内容添加进去,此处需要设定环境变量 CATALINA_HOME 指向 tomcat 的安装目录:
CATALINA_OPTS=”-Xmx512M -XX:MaxPermSize=258m -Dbtm.root=$CATALINA_HOME \
-Dorg.uberfire.async.executor.safemode=true \
-Dbitronix.tm.configuration=$CATALINA_HOME/conf/btm-config.properties \
-Djbpm.tsr.jndi.lookup=java:comp/env/TransactionSynchronizationRegistry \
-Djava.security.auth.login.config=$CATALINA_HOME/webapps/kie-drools-wb/WEB-INF/classes/login.config \
-Dorg.kie.demo=false
-Dorg.jboss.logging.provider=jdk”
注意: 以 Debian 为基础的系统需要将 $CATALINA_HOME 替换成 $CATALINA_BASE. ($CATALINA_HOME 默认为 /usr/share/tomcat7 而 $CATALINA_BASE 默认为 /var/lib/tomcat7/)
注意: 这是一个以类 unix 系统的例子,在 Windows 环境下 $CATALINA_HOME 不需要使用 Windows 环境变量或者绝对路径进行替换.
注意: java.security.auth.login.config 的值中包括应用发布的名称,默认为 kie-drools-wb,所以请确保该值与真实的发布名称相匹配. 这意味 login.config 可以使用 war 包外部的文件进行替代.
拷贝 “kie-tomcat-integration” JAR 到 TOMCAT_HOME/lib (org.kie:kie-tomcat-integration)
拷贝 “JACC” JAR 到 TOMCAT_HOME/lib (javax.security.jacc:artifactId=javax.security.jacc-api)
拷贝 “slf4j-api” JAR 到 TOMCAT_HOME/lib (org.slf4j:artifactId=slf4j-api)(第一步已完成该操作)
在 TOMCAT_HOME/conf/server.xml 的 Host 元素中添加如下 valve 配置:
<Valve className="org.kie.integration.tomcat.JACCValve" />
<user username="kie" password="kie" roles="admin"/>
最后,启动 Tomcat 服务器,使用地址 http://{host}:{port}/kie-drools-wb/index.jsp 进行访问,使用 kie/kie 进行登录。
安装过程中可能出现的问题:
警告: ThreadLocal with key of type [org.jboss.errai.config.util.ClassScanner$1]
解决方法:该问题是因为在使用 Tomcat 部署KIE Workbench 时,会尝试访问 GITHUB 拉取一个例子工程,而无法正常访问网络。只需要在 setenv.sh 里面增加配置项 -Dorg.kie.demo=false 即可(文中配置已添加)。
警告: Environment variable M2_HOME is not set
解决方法:在本机上安装Maven,并在环境变量中配置 M2_HOME 为 Maven 安装路径即可。
警告: static marshallers were not found.
警告: using dynamic marshallers. dynamic marshallers are designed for development mode testing, and ideally should not be used in production. *
解决方法:无,WorkBench的Bug,暂没有修复计划,参考 https://issues.jboss.org/browse/JBPM-4754