伙计们,我在 DB2 中有一个过程,我正在尝试使用jpa hibernate调用它,但是我遇到了错误。
依赖专家是:
<dependency>
<groupId>com.ibm.db2</groupId>
<artifactId>db2jcc4</artifactId>
<version>10.5</version>
</dependency>
Jpa
StoredProcedureQuery storedProcedure = entityManager.createStoredProcedureQuery("GL.GLMAPOUT");
storedProcedure.registerStoredProcedureParameter("O_ERROR", Integer.class, ParameterMode.OUT);
storedProcedure.execute();
gc1glcostctrmaps = (List<ProdureDto>) storedProcedure.getResultList();
输出:
Hibernate:
{call GL.GLMAPOUT(?)}
2018-07-22 15:30:21.397 WARN 13916 --- [nio-8082-exec-4] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: -4472, SQLState: null
2018-07-22 15:30:21.414 ERROR 13916 --- [nio-8082-exec-4] o.h.engine.jdbc.spi.SqlExceptionHelper : [jcc][10453][12710][3.68.61] Cannot get the describe information for the calling stored procedure with name GLMAPOUT and path ' SYSIBM , SYSFUN , SYSPROC , GLDEV ' ERRORCODE=-4472, SQLSTATE=null
但是在 Data Studio 中就可以了
答案 0 :(得分:0)
如果Db2服务器在Z / OS上运行,则需要将Db2 jdbc驱动程序从其当前的V10.5.0.4级别(jdbc 3.0驱动程序版本3.68.61)升级到更高版本,以解决已知的错误。
此错误似乎已在驱动程序3.69.24及更高版本中修复。
从此site下载适用于您的Db2客户端的最新修订包。