六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 390|回复: 0

JBPM4连接HSQLDB数据库

[复制链接]

升级  70%

41

主题

41

主题

41

主题

秀才

Rank: 2

积分
155
 楼主| 发表于 2013-1-14 23:42:08 | 显示全部楼层 |阅读模式
数据库配置文件:
jbpm.hibernate.cfg.xml

<hibernate-configuration>
<session-factory>
  
        <property name="show_sql">true</property>
  
<property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
<!-- <property name="hibernate.connection.url">jdbc:hsqldb:mem:.</property> -->
<property name="hibernate.connection.url">jdbc:hsqldb:hsql://localhost/jbpm</property>
<property name="hibernate.connection.username">SA</property>
<property name="hibernate.connection.password"></property>
<!-- <property name="hibernate.hbm2ddl.auto">create-drop</property> -->
<!-- <property name="hibernate.format_sql">true</property> -->

<mapping resource="jbpm.repository.hbm.xml" />
<mapping resource="jbpm.execution.hbm.xml" />
<mapping resource="jbpm.history.hbm.xml" />
<mapping resource="jbpm.task.hbm.xml" />
<mapping resource="jbpm.identity.hbm.xml" />

</session-factory>
</hibernate-configuration>

1、默认配置是以memory-only方式连接HSQLDB数据库,注意hibernate.hbm2ddl.auto配置的是create-drop,该配置作用是由model对象来创建表结构,所以以这种方式运行时不需要创建数据表。但是在hibernate关闭后,会使将表删除,造成数据丢失;

2、报错:A pre-9.0 client attempted to connect. We rejected them.
由于memory-only数据库无法用工具连接查看数据,所以改成WebServer方式;
再使用WebServer模式启动HSQLDB时,连接数据库时报A pre-9.0 client attempted to connect. We rejected them错误。
原因是,我的HSQLDB版本是2.2.8,而JBPM自带的HSQLDB.JAR的版本是1.8.x。所以使用2.2.8的hsqldb.jar覆盖JBPM自带的hsqldb.jar即可;
这样就需要手动创建表结构了,脚本位于jbpm-4.4\install\src\db\create\jbpm.hsqldb.create.sql
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表