orm - SQLScriptPreparer 空指针异常

标签 orm intershop

我们已经成功执行了DatabaseTablesPreparer并初始化了数据库中的表,但是当我们尝试使用SQLScriptPreparer初始化表上的索引时,我们得到以下异常:

ES1 dbinit [] [] com.intershop.platform.cartridge.internal.CartridgeImpl [] [] [] [] "main"找不到卡带“app_core_a1”的 Ivy 描述符和卡带属性! ES1 dbinit [] [app_core_a1:Class1 DatabaseIndexesPreparer [hr/a1/core/dbinit/scripts/dbindex.ddl] 版本:null] com.intershop.beehive.core.dbinit.preparer.database.DatabaseIndexesPreparer [] [] [] [ ]“主要”[核心]异常java.lang.NullPointerException:null 在 com.intershop.beehive.core.dbinit.preparer.database.SQLScriptPreparer.getCommand(SQLScriptPreparer.java:158) 在 com.intershop.beehive.core.dbinit.preparer.database.SQLScriptPreparer.process(SQLScriptPreparer.java:353)

我们在使用DatabaseTablesPreparer时也遇到了类似的问题(盒式磁带为空),我们通过添加cartridge.properties文件解决了这个问题,但现在我们遇到了相同的错误(“既没有为盒式磁带'app_core_a1'找到Ivy描述符也没有找到盒式磁带属性”) ),即使盒式磁带属性文件已定义。

反编译的准备器代码中有几行发生空指针异常:

getCartridge().getVersion() + (getCartridge().getBuild().isEmpty() ? "" : new StringBuilder().append(".").append(getCartridge().getBuild()).toString()) };

这是 dbinit.properties 的准备器:

Class1  = com.intershop.beehive.core.dbinit.preparer.database.DatabaseIndexesPreparer \
          hr/a1/core/dbinit/scripts/dbindex.ddl

这是我们正在执行的 dbinit 命令:

dbinit.bat --exec-id=app_core_a1:Class1

来自同一盒式磁带、在同一 dbinit 中定义的 DatabaseTablesPreparer 成功执行。

最佳答案

问题已通过发布墨盒解决。看来 ivy 描述符已被删除,必须重新发布。

关于orm - SQLScriptPreparer 空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50856112/

相关文章:

Python/Django 过滤组中具有最大值的行

java - 错误 : java. lang.NoSuchMethodError : org. objectweb.asm.ClassWriter.<init>(I)V

java - 名为 'userService' 的 Bean 预期类型为 'demo.spring.orm.userService.UserService',但实际上类型为 'com.sun.proxy.$Proxy20'

intershop - 是否可以在 ISML 表达式中使用 Java 枚举

mysql - 在 Node express post回调中访问orm数据

python - Django ORM 和工作单元

database - DBIinit DatabaseTablesPreparer NullPointerException

Intershop:有没有办法从 ISML 的属性文件中读取值?

java - InterShop 日期比较条件不起作用