我最近升级了一个使用JAVA 7和JBoss 7.1.1运行的应用程序.该应用程序最初是在JAVA 5和Jboss 4.2.2上开发的.此应用程序使用hibernate 3进行持久化.在新平台上,当尝试插入具有上述错误的CLOB字段的表时,应用程序失败....
我最近升级了一个使用JAVA 7和JBoss 7.1.1运行的应用程序.该应用程序最初是在JAVA 5和Jboss 4.2.2上开发的.此应用程序使用hibernate 3进行持久化.
在新平台上,当尝试插入具有上述错误的CLOB字段的表时,应用程序失败.我使用的是ojdbc14.jar(后端数据库Oracle 10.2.0.3)
这些是我在jboss 7.1.1配置中验证的内容:
>为Oracle创建正确的模块.确保ojdbc14.jar存在于正确的modules目录中
>确保jboss目录中的其他任何位置都没有其他冲突的ojdbc.jar
>确保应用程序不是指不同的ojdbc.jar.
任何见解都会有所帮助.我正拉着我的头发试图解决这个问题差不多一个星期了.
非常感谢
解决方法:
我解决了这个问题.发布这个答案,希望它可能对某人有用.
当我检查查询检索到的CLOB的实例类型时,它出现为oracle.sql.CLOB.所以我认为它必定是ojdbc.jar的版本不匹配.我为ojdb.jar的多个副本检查了我的项目数十亿次.没有.
最后它结果是hibernate和ojdbc之间的冲突.我更改了对java.sql.Clob的引用. Hibernate使用java.sql.Clob.这解决了这个问题.
本文标题为:java.lang.ClassCastException:oracle.sql.CLOB无法强制转换为oracle.sql.CLOB
基础教程推荐
- JPA多数据源分布式事务处理方案 2022-10-24
- Java + Selenium + OpenCV解决自动化测试中的滑块验证问题 2023-03-11
- JavaScript实现链表插入排序和链表归并排序 2023-08-02
- Java 方法引用与ambda表达式的联系 2023-01-18
- 详解JSP中使用过滤器进行内容编码的解决办法 2023-07-31
- Spring的Model 和 Map的原理源码解析 2023-01-13
- java 安全ysoserial URLDNS利用链分析 2023-06-30
- SpringBoot如何监听redis Key变化事件案例详解 2023-03-31
- Java创建线程的五种写法总结 2023-04-18
- 如何在Java中创建进度条 2023-10-08