oracle JDBC jar导致错误问题!

20分钟搞定 SpringBoot+Mybatis+多数据源 20分钟快速集成Springboot+Mybatis+多数据源 阅读详情

原来项目中用的数据库连接池是 hibernate自带的dbcp,项目run的还行。

过了一段时间之后想优化一下项目,想使用 spring的数据源部分,把数据库链接放到容器当中建立数据源 

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
       <property name="jndiName">
           <value>java:comp/env/DS</value>
       </property>
    </bean>

配上之后,系统总是抛出异常:

java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getBlob(Ljava/lang/String;)Ljava/sql/Blob;
 at org.apache.commons.dbcp.DelegatingResultSet.getBlob(DelegatingResultSet.java:526)
 at net.sf.hibernate.type.BlobType.get(BlobType.java:32)
 at net.sf.hibernate.type.NullableType.nullSafeGet(NullableType.java:62)
 at net.sf.hibernate.type.NullableType.nullSafeGet(NullableType.java:53)
 at net.sf.hibernate.type.AbstractType.hydrate(AbstractType.java:66)
 at net.sf.hibernate.loader.Loader.hydrate(Loader.java:686)
 at net.sf.hibernate.loader.Loader.loadFromResultSet(Loader.java:627)
 at net.sf.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:586)
 at net.sf.hibernate.loader.Loader.getRow(Loader.java:501)
 at net.sf.hibernate.loader.Loader.getRowFromResultSet(Loader.java:213)
 at net.sf.hibernate.loader.Loader.doQuery(Loader.java:281)
 at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
 at net.sf.hibernate.loader.Loader.doList(Loader.java:1033)
 at net.sf.hibernate.loader.Loader.list(Loader.java:1024)
 at net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:854)
 at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1544)
 at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:39)
 at org.springframework.orm.hibernate.HibernateTemplate$19.doInHibernate(HibernateTemplate.java:645)
 at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:312)
 at org.springframework.orm.hibernate.HibernateTemplate.find(HibernateTemplate.java:631)
 at org.springframework.orm.hibernate.HibernateTemplate.find(HibernateTemplate.java:610)
。。。。
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
 at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:57)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
 at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
 at $Proxy4.userLogin(Unknown Source)
 。。。。。
 at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:105)
 at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
 at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
 at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
 at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
 at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
 at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
 at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
 at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
 at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
 at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
 at java.lang.Thread.run(Thread.java:595)

2009-06-16 10:24:06 StandardWrapperValve[action]: Servlet.service() for servlet action threw exception
java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getBlob(Ljava/lang/String;)Ljava/sql/Blob;
 at org.apache.commons.dbcp.DelegatingResultSet.getBlob(DelegatingResultSet.java:526)
 at net.sf.hibernate.type.BlobType.get(BlobType.java:32)
 at net.sf.hibernate.type.NullableType.nullSafeGet(NullableType.java:62)
 at net.sf.hibernate.type.NullableType.nullSafeGet(NullableType.java:53)
 at net.sf.hibernate.type.AbstractType.hydrate(AbstractType.java:66)
 at net.sf.hibernate.loader.Loader.hydrate(Loader.java:686)
 at net.sf.hibernate.loader.Loader.loadFromResultSet(Loader.java:627)
 at net.sf.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:586)
 at net.sf.hibernate.loader.Loader.getRow(Loader.java:501)
 at net.sf.hibernate.loader.Loader.getRowFromResultSet(Loader.java:213)
 at net.sf.hibernate.loader.Loader.doQuery(Loader.java:281)
 at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
 at net.sf.hibernate.loader.Loader.doList(Loader.java:1033)
 at net.sf.hibernate.loader.Loader.list(Loader.java:1024)
 at net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:854)
 at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1544)
 at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:39)
 at org.springframework.orm.hibernate.HibernateTemplate$19.doInHibernate(HibernateTemplate.java:645)
 at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:312)
 at org.springframework.orm.hibernate.HibernateTemplate.find(HibernateTemplate.java:631)
 at org.springframework.orm.hibernate.HibernateTemplate.find(HibernateTemplate.java:610)
。。。。。
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 

后来终于在网上找到了答案,至于是那位高手,俺忘了,不好意思啊,见谅!:-)

网友高手指出,是由于oracle的jar所导致的问题。经本人比较oracle 9i 的jar如下:

 ————————————————————————————————                            

oracle自带的jar:  classes111.jar      952KB

                          classes12.jar        1.07MB

—————————————————————————————————

从官方下载的jar:  classes12.jar         1.35MB

—————————————————————————————————

 

换完oracle的jar 问题解决。那位高手或网友对这个问题做具体分析了或有啥好的文章、看法,希望留个评论。俺想再深入看看。:-)

                 

 最后,感谢那位不知名的网友!特别是你帮俺把问题解决了,没把你的网址记住,抱歉!

                                                       (浪费了好长时间啊,%>_<%)

 

 

 

java.lang.AbstractMethodError:oracle/jdbc/driver/OracleResultSetImpl.getObject 驱动版本有误。 项目场景: Springboot整个Mybatis ,MP,oracle过程问题记录。 问题描述: java.lang.AbstractMethodError: Method oracle/jdbc/driver/OracleResultSetImpl.getObject(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; is abstract 原因分析: 驱动版本有误,Mybatis 与 oracle驱动冲突,此时Mybatis依赖为2. 阅读详情

相关推荐

jdbc连接oracle scan IP报错Cannot create PoolableConnectionFactory

现象: Cannot create PoolableConnectionFactory (Io 异常:Connectionrefused(DESCRIPTION=(ERR=1153)(VSNNUM=186647040)(ERROR_STACK=(ERROR=(CODE=1153)(EMFI=4)(ARGS='(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=

hijk139的专栏 4866

java.lang.AbstractMethodError: Method org/apache/commons/dbcp/DelegatingResultSet.getObject(Ljava/la

org.apache.commons.dbcp.BasicDataSource替换为。将commons-dbcp更换为commons-dbcp2即可。dbcp和dbcp2部分配置参数不同,稍微变更即可。

不积跬步,无以至千里 2048

记录:解决Method oracle/jdbc/driver/OracleResultSetImpl.getObject is abstract问题【亲测有效】

如何解决Method oracle/jdbc/driver/OracleResultSetImpl.getObject is abstract...报错,我教你!

**My Coding Family** 2766

Oracle+MybatisPlus逆向工程运行时出现java.lang.AbstractMethodError: Method oracle/jdbc/driver/OracleResultSetI

异常全文: java.lang.AbstractMethodError: Method oracle/jdbc/driver/OracleResultSetImpl.getObject(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; is abstract at oracle.jdbc.driver.OracleResultSetImpl.getObject(OracleResultSetImpl.java) ~[ojdbc6-11.2.0.3

少年的微博客 1613

Oracle JDBC驱动jar包集成指南

本文还有配套的精品资源,点击获取 简介:Oracle JDBC驱动jar包是连接Java应用与Oracle数据库的桥梁,特别是Oracle 11g版本。它通过JDBC接口与数据库进行交互,其中包含的"ojdbc6.jar"或"ojdbc7.jar"等文件支持通过TCP/IP与数据库服务器通信,无需安装完整的Oracle客户端。该驱动允许开发者执行SQL语句,管理数据库事务,...

weixin_42418754的博客 3301

最新Oracle JDBC驱动ojdbc.jar项目集成与实战指南

htmltable {th, td {th {pre {简介:Oracle JDBC驱动程序(ojdbc.jar)是Java应用连接Oracle数据库的核心组件,作为Java与Oracle数据库通信的桥梁,广泛用于各类企业级应用开发。本文介绍ojdbc.jar的使用方法,重点讲解如何通过DriverManager.getConnection()建立数据库连接,并涵盖JDBC URL格式、驱动注册、类路径配置等关键步骤。

weixin_36173034的博客 957

java oracle jdbc jar_需要哪些Oracle jdbc jar

我在Oracle jdbc下载页面http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html中看到许多jar文件我已经下载了以下驱动程序:ojdbc6.jarojdbc6_g.jarojdbc6dms.jarojdbc6dms_g.jarorai18n.jar我正在尝试在Tomcat 7...

weixin_32809369的博客 232

Oracle数据库开发必用JAR包及应用指南

在本章节中,我们将介绍Oracle数据库的基础知识,并且概述如何通过SQL和PL/SQL与Oracle进行交互。对于初学者来说,理解如何通过SQL语句进行数据的查询、插入、更新和删除是掌握数据库交互的第一步。Oracle数据库提供了多种非JDBC接口供开发者选择,用于与数据库进行交互。这些接口包括SQLLoader等。在本小节中,我们将介绍这些接口的基本概念和它们在Oracle数据库中的作用,并且展示如何在项目中实现这些非JDBC接口的调用。在Oracle数据库中,SQL。

weixin_35414484的博客 1161

oracle用jdbc时报空指针NullPointerException错误

如果你用的是oracle的数据库,使用jdbc时遇到下面的错误: java.lang.NullPointerException at java.lang.String.(Unknown Source) at oracle.sql.CharacterSet.AL32UTF8ToString(CharacterSet.java:1517) at oracle.jdbc.driver.DBCon

lupangdelu的专栏 6435

小爱音箱Play增强版刷机接入大模型:自定义唤醒词与远程控制全攻略

智能音箱作为家庭语音入口,受限于厂商预设技能,难以满足个性化需求。通过串口刷机与Linux系统分区改造,可以完全掌控设备底层,将豆包、通义千问等大模型API接入原有音频链路,实现真正智能的语音问答。自定义唤醒词打破了“小爱同学”的唯一唤醒方式,结合ESP32-S3外挂模块,还能优化远场拾音。更深入的应用在于将音箱打造为家庭中控,通过大模型工具调用解析自然语言指令,实现远程控制电脑、智能灯等设备。本文从设备选型、拆机串口、系统备份到语音链路搭建,完整梳理了小爱音箱Play增强版的改造路径,适合具备动手能力的开

weixin_30036289的博客 748

[Adaptive Autosar]深入理解--Time Synchronization

目录 1.TS典型应用场景 2.CP和AP时间同步对比 3.时间同步基础知识 4.TBR部分参数说明 5. TS功能说明 5.1 基本说明 5.2 时间纠正计算说明 5.3 时间验证 Time Synchronization 时间同步,后面简称TS 1.TS典型应用场景 时间同步,典型应用就是在自动驾驶领域,自动驾驶领域涉及到各个传感器的数据采集,如IMU采集当前车身姿态和运动信息,毫米波雷达-超声波雷达-环视摄像头-前视摄像头...等等传感器捕获的数据,在算法中需要精确知道每个数.

AgingMoon的博客 3997

Maven:导入Oracle的jar包时出现错误

QUESTION:Maven:导入Oracle的jar包时出现错误 目录 QUESTION:Maven:导入Oracle的jar包时出现错误 ANSWER: 一:问题分析 二:解决方案 ANSWER: 一:问题分析 一开始我在导入oracle时以为是编译器的原因,于是重新导入还是不行,之后又找是不是包的版本不一致,毕竟ssm版本匹配比较高。经过一番鼓捣,打开网站查...

岁月求索 1783

基于电子海图的水面无人艇全局路径规划

Research and Implementation of Global Path Planning for Unmanned Surface Vehicle Based on Electronic Chart (基于电子海图的水面无人艇全局路径规划)   该论文已经在ICMIR2017会议上发表,附上springer的文献地址 Research and Implementation of Gl...

weixin_30797199的博客 1591

Maven库中Oracle JDBC驱动缺失问题解决方案

Maven库中Oracle JDBC驱动缺失问题解决方案 去发现同类优质开源项目:https://gitcode.com/ 简介 本资源文件旨在解决Maven库中缺少Oracle JDBC驱动的问题,具体表现为Cannot resolve com.oracle:ojdbc14:10.2.0.4.0错误。该资源文件提供了一个解决方案,帮助开发者手动导入Oracle JDBC驱动到本地Maven仓库中...

gitblog_06519的博客 1252

大话西游2单机版V8一键架设教程:5分钟搞定GM权限和仙玉修改(附完整物品代码表)

本文详细讲解了大话西游2单机版V8的一键架设教程,包括5分钟快速配置GM权限、仙玉修改及物品代码使用技巧。通过分步指导和服务端配置详解,帮助玩家轻松掌握游戏管理功能,重温经典回合制体验。附完整物品代码表,助你快速获取稀有道具和神兽。

weixin_42557830的博客 1238

[cadence]Allegro STEP-3D模型导入、匹配、导出的方法及注意事项

如果 Avaliable里面没有和symbols对应的文件,说明没有对应的3D模型,这时候需要在你的step路径下创建y与 .dra 封装文件相同名称的。选择好 Output file 和 name 之后呢,点击 Export。首先打开Setup - Step Package Mapping。注意:路径中不能有中文名称,有的话你会发现不能导出,也不会报错。在路径下将下载或者自己做的 3D模型文件改名之后,重新打开。可在View -> 3D View。

LuDvei的博客 2万+

Failed to scan JAR [jndi:/localhost/WEB-INF/lib/oracle-jdbc-9.2.0.8.jar]

1. Tomcat 8的报错: Unmapped Spring configuration files found.  Failed to scan JAR [jndi:/localhost/WEB-INF/lib/oracle-jdbc-9.2.0.8.jar] Tomcat 7的报错:

zhaoyingjiao的专栏 1万+

免费搞定DWG转DXF:ODA File Converter保姆级配置指南(附常见报错解决)

本文详细介绍了如何使用ODA File Converter免费工具实现DWG到DXF的格式转换,包括环境配置、命令行参数解析、编程集成方案及常见问题解决。特别针对网络访问异常、参数配置等实际痛点提供应对策略,帮助用户高效完成工程设计文件的格式转换。

weixin_29291185的博客 6061

java连oracle报错timeout,Oracle JDBC间歇性连接问题

I am experiencing a very strange problemThis is a very simple use of JDBC connecting to an Oracle databaseOS: UbuntuJava Version: 1.5.0_16-b021.6.0_17-b04Database: Oracle 11g Release 11.1.0.6.0When I...

weixin_39970689的博客 1074

3.7 改造模型:为GPT添加一个分类头(Classification Head)

本文介绍如何改造GPT模型用于文本分类任务。主要内容包括: 分类头设计思路:GPT作为语言模型需要添加分类头才能适应分类任务,类似于为语言大师添加裁判功能。 序列表示选择策略: 分析三种常见方法(CLS标记、平均池化、最后词元表示) 推荐使用最后词元表示,因其最能反映GPT的单向信息流特性 代码实现: 构建GPT2ForSequenceClassification类 包含预训练GPT主体和线性分类头 使用attention_mask智能定位句子结尾 通过高级索引提取最后词元特征 该方法通过简单改造使GPT模

yonggeit的博客 2973

1.4 你绝对不能错过的天气查询工具:MCP 标准化接入实战

本文介绍了如何构建一个符合MCP标准的天气查询服务。通过FastMCP框架集成OpenWeatherMap API,实现实时天气、天气预报和历史天气查询功能。文章详细展示了从环境准备、插件设计到控制器实现的完整流程,包括如何定义工具函数、配置路由和中间件。同时讲解了如何将MCP服务封装为LangChain工具并与DeepSeek等大模型集成,还涵盖了缓存、限流等高级特性。该示例演示了如何将任意API标准化为MCP服务,为Agent应用提供统一接口。

yonggeit的博客 3047

关于错误oracle.jdbc.OracleDriver的解决

在使用tomcat6发布程序时总是出现错误 java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver 错误提示信息如下 : 严重: Servlet.service() for servlet action threw exception java.lang.ClassNotFoundException: oracle....

skyme 1075

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JDBC连接Oracle 12c 错误信息ORA-28040: No matching authentication protocol

主要原因是 JDBC jar包冲突 前言:在网上找了解决方案 找到 D:\app\oracle\product\12.1.0\dbhome_1\NETWORK\ADMIN 的 sqlnet.ora文件,如果没有这个文件则创建,添加下面的参数 SQLNET.ALLOWED_LOGON_VERSION=8 ##没有sqlnet.ora文件时,再添加下面参数 SQLNET.AUTHENTI...

qq_40309399的博客 2994

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Oracle +JDBC

文章目录@[toc]JDBCJDBC简介JDBC + Oracle + Eclipse简介外部JAR包加载到我们项目认识结构Java程序借助JDBC连接数据库Java API步骤1.加载数据库驱动2.创建数据库连接:Connection接口3.创建sql执行器:Statement 接口4.执行sql5.处理返回的结果集或者别的操作6.释放数据库连接资源举例常用接口Connection接口Statement接口Statement:PreparedStatement :CallableStatement:常用S

大数据 小白学习录 2088

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

访问BIRT报表时出现Cannot load JDBC Driver错误!

访问BIRT报表时出现错误: 可能原因是ORACLE JDBC类没有找到,但是在项目里面已经包含了classes12的包。在JBoss的lib里面也包含classes12的包。 [quote] 14:09:49,685 INFO [STDOUT] 2007-12-14 14:09:49 org.eclipse.birt.report.data.oda.jdbc.JDBCDriver...

bigbug8088的专栏 1091

Java连接oracle的关于oracle.jdbc.driver.OracleDriver的错误的解决

今天在做JAVA连接数据库的时候,出现:java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver这个提示的错误。仔细看了下,是JDBC的驱动没有加载到project中。我的代码如下:view plaincopy to clipboardprint?try{     Class.forName("oracle.

wish_silence的专栏 5万+
上一篇: 清理Backup.exe文件
下一篇: Apache MINA包括(MINA、FtpServer、AsyncWeb 、SSHD )
3D先生
博客等级 码龄19年 15粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值