问题描述
我最近从 JBPM 7.44/PAM 7.9.1 升级到 JBPM 7.48/PAM 7.10.0 并在 JBPM 持续处于安全状态时(即,当 JBPM 尝试保存一个处理它对 Hibernate 的使用抛出关于 NodeInstanceLog 和 SessionInfo 是一个无效对象的异常)。我在我的 persistence.xml 中添加了几个持久性单元,删除/添加了 sql Server for JBPM 中的表,并在他们的文档中发布了 RedHat 引用的 ALTER TABLE 命令以避免死锁。使用 JDBC 访问 JBPM 表工作正常,NodeInstanceLog 和 Session 都是 AMS_JBPM.dbo.NodeInstanceLog 中的表。
对如何更正我的配置有任何想法吗?
这是我的堆栈跟踪的结尾:
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS" jta="true"
pool-name="ExampleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:sqlserver://${db.server};DatabaseName=AMS_JBPM</connection-url>
<driver>sqlserver</driver>
<security>
<user-name>${db.jbpm.user}</user-name>
<password>${db.jbpm.pwd}</password>
</security>
</datasource>
<drivers>
<driver name="sqlserver" module="com.microsoft.sqlserver.jdbc">
<driver-class>com.microsoft.sqlserver.jdbc.sqlServerDriver</driver-class>
</driver>
</drivers>
</datasources>
这是我在 standalone-full.xml 中的数据库配置:(当我没有在连接 URL 中指定 DatabaseName 时,我也运行了相同的结果)
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.sqlServer2012Dialect</property>
<property name="hibernate.max_fetch_depth">3</property>
<property name="hibernate.hbm2ddl.auto">none</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.id.new_generator_mappings">false</property>
<property name="hibernate.transaction.jta.platform">
org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform</property>
<property name = "hibernate.connection.driver_class">com.microsoft.sqlserver.jdbc.sqlServerDriver</property>
<property name = "hibernate.connection.url">jdbc:sqlserver://${server};DatabaseName=AMS_JBPM</property>
<property name = "hibernate.connection.username">${db.jbpm.user}</property>
<property name = "hibernate.connection.password">${db..jbpm.pwd}</property>
<mapping resource="User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
Hibernate 似乎是在 Business Central 中定义的,但我也有一个 hibernate.config.xml 文件。
persistence.xml
{{1}} 是类似的 - 但考虑到其中提到的类的数量,可能无法在此处列出。我使用 Hibernate 运行,没有在连接 URL 中引用 DatabaseName,指定默认模式,并使用 JBossstandAloneJtaPlatform(而不是 JBossAppServerJtaPlatform)。我的 persistence.xml 定义了许多类的持久性单元,包括 SessionInfo 和 NodeInstanceLog。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)