2013-02-07 60 views
6

我想知道是否有任何可用的例子或链接解释我们步骤 如何在JBPM中持久化数据?坚持数据在Jbpm 5.4

我想在某种意义上制作一个Web应用程序,用户注册表单中的用户/人填写表单并单击提交按钮后,数据应存储在MySQl数据库的数据库表中。

任何帮助表示赞赏。

谢谢。

回答

3

过去几天我一直在为此而苦苦挣扎。我已经使用JBPM 6.1.0.Final构建。我用这个maven example webapp project。有关环境设置的快速警告:我只能将项目部署到JBoss EAP 6.3中。我试过Wildfly 8.1和8.2,但是我一直在收到错误,我无法弄清楚如何解决这个问题,所以你的milage可能会有所不同。我还遇到了一些注释问题,但我认为这不在原始问题的范围之内。

我必须对persistence.xml进行一些更改才能使所有工作都成功。

  1. 该代码只有在持久化单元名称从'jbpm.unit01'设置为'org.jbpm.domain'时才有效。除了persistence.xml之外,请确保更新代码中的注释。这可能不是必需的,但如果我没有更新它,我会遇到部署问题。
  2. 我创建了一个JBoss数据源,因此您需要更新jta-data-source元素。我选择遵循JBoss约定,选择java:jboss/datasources/jbpmDS。
  3. 在persistence.xml的properties部分中,您需要将hibernate.dialect属性的值更新为数据库的方言。从this listing选择最匹配的项目
  4. 将以下内容添加到persistence.xml中的属性列表中: <property name="hibernate.hbm2ddl.auto" value="create" />这将在数据库部署时重新创建数据库。一旦创建了数据库,您可以将该值从'create'更改为'validate',以便在每次重新部署时不会将旧数据删除。
  5. 我发现令人沮丧的另一件事是,引用其他XML文件的persistence.xml:META-INF/Taskorm.xml和META-INF/JBPMorm.xml。我花了一段时间才找到有效的版本。请参阅我的评论以获取链接,因为我没有足够的评论来在单个回复中发布超过2个链接。
  6. 我需要从类列表中删除BAMTaskSummaryImpl和TaskEventImpl的行。如果这些行未被删除,我就收到了部署的ClassDefNotFound。

这些是我的主要阻滞剂,同时试图让项目运行。我希望有所帮助。

+0

添加[Taskorm.xml](http://grepcode.com/file/repository.jboss.org/nexus/content/repositories/releases/org.jbpm/jbpm-human-task-jpa/6.1.0。 Final/META-INF/Taskorm.xml)和[JBPMorm.xml](https://github.com/droolsjbpm/jbpm/blob/master/jbpm-persistence-jpa/src/main/resources/META-INF/JBPMorm .xml)复制到src/main/resources/META-INF – Mike