【发布时间】:2013-06-16 13:46:48
【问题描述】:
JBoss EAP 6.1 独立服务器
部署为 war 文件的应用程序引发运行时异常
java.lang.ClassCastException: oracle.sql.ARRAY cannot be cast to oracle.sql.ARRAY
一行
oracle.sql.ARRAY obj = (oracle.sql.ARRAY) rs.getObject("RATINGOBJ");
包含的 JDBC 库是 ojdbc6.jar (WEB_INF/lib)。所有库都包含在 war 文件中,并且服务器上没有设置“全局”库。我已验证应用程序中的任何位置均未包含其他 jdbc 库。
为了创建 JDBC 数据源,我为 ojdbc6.jar 创建了部署。这是我能想到的唯一可能的冲突来源。当我从 war 文件中删除 ojdbc6.jar 时,我得到一个 ClassNotFound 异常来代替 ClassCastException。
应用程序的所有其他部分都可以正常工作,除了这一行。我该如何进一步调试?
【问题讨论】:
-
也许尝试运行一个非常简单的测试应用程序,只使用您的 JDBC 驱动程序作为依赖项?
-
它只是偶尔发生吗?每次重新部署应用程序时是否都重新启动服务器?
-
每次部署应用程序时,我都会重新启动服务器。我认为没有必要,但我还是这样做了。
标签: java oracle jboss classcastexception