6

我想知道是否有任何示例或链接可以逐步解释我们如何在 JBPM 中持久化数据?

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

对此的任何帮助表示赞赏。

谢谢。

4

1 回答 1

3

在过去的几天里,我一直在为此苦苦挣扎。我使用的是 JBPM 6.1.0.Final 版本。我使用了这个 Maven示例 webapp 项目。关于环境设置的快速警告:我只能在 JBoss EAP 6.3 中部署项目。我在 Wildfly 8.1 和 8.2 中尝试过,但我不断收到错误,我无法弄清楚如何修复,因此您的里程可能会有所不同。我也遇到了一些注释问题,但我认为这超出了原始问题的范围。

我必须对persistence.xml 进行一些更改才能使一切正常。

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

这些是我试图让项目运行时的主要障碍。我希望这会有所帮助。

于 2015-02-17T18:12:50.093 回答