我将Activiti应用程序从内存数据库切换到Oracle。脚本activiti.oracle.create.engine.sql
,activiti.oracle.create.history.sql
,activiti.oracle.create.identity.sql
已成功执行,所有表都在数据库中创建。应用程序启动正常并初始化没有任何问题。但是,当我尝试运行我的一个Activiti工作流程时,出现以下错误。
Hibernate: select hibernate_sequence.nextval from dual
[2016-03-09 10:02:35] [W] [SqlExceptionHelper.logExceptions:144] SQL Error: 2289, SQLState: 42000
[2016-03-09 10:02:35] [E] [SqlExceptionHelper.logExceptions:146] ORA-02289: sequence does not exist
我的工作流程采用了一些保存在JPA存储库中的变量。我知道错误已经返回,因为Hibernate无法找到为我的变量生成ID的序列。
我的问题是我是否需要自己创建此序列,或者是否由我错过的其中一个脚本创建?非常感谢提前!
顺便说一句,我有以下设置来确保在启动时不执行DDL脚本
spring.jpa.generate-ddl=false
spring.jpa.hibernate.ddl-auto=none
答案 0 :(得分:0)
默认情况下,Hibernate不执行DDL(推荐的生产方法)。此外,您明确指出您不希望执行DDL。
所以,是的,您必须自己创建序列(再次,建议的生产方法)。