一、前言
通过ojdbc14.jar连接oracle数据库,应用运行期间报出“java.sql.SQLException: Io 异常: Size Data Unit (SDU) mismatch”异常,异常日志如下所示
java.sql.SQLException: Io 异常: Size Data Unit (SDU) mismatch @b@ at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)@b@ at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)@b@ at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333)@b@ at oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:389)@b@ at oracle.jdbc.driver.OracleConnection.privateCreateStatement(OracleConnection.java:772)@b@ at oracle.jdbc.driver.OracleConnection.createStatement(OracleConnection.java:712)@b@ at com.xwood.engine.common.util.DBUtilExt.readTemCLOB(DBUtilExt.java:72)@b@ at com.xwood.engine.publisher.core.SingleUnitDao.getclob(SingleUnitDao.java:151)@b@ at com.xwood.engine.publisher.slave.TempletDao.impletListTag(TempletDao.java:180)@b@ at com.xwood.engine.publisher.slave.tag.ListTag.processData(ListTag.java:119)@b@ at com.xwood.engine.publisher.slave.tag.ListTag.execute(ListTag.java:79)@b@ at freemarker.core.Environment.visit(Environment.java:261)@b@ at freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)@b@ at freemarker.core.Environment.visit(Environment.java:208)@b@ at freemarker.core.Environment.include(Environment.java:1481)@b@ at freemarker.core.Include.accept(Include.java:169)@b@ at freemarker.core.Environment.visit(Environment.java:208)@b@ at freemarker.core.MixedContent.accept(MixedContent.java:92)@b@ at freemarker.core.Environment.visit(Environment.java:208)@b@ at freemarker.core.Environment.process(Environment.java:188)@b@ at freemarker.template.Template.process(Template.java:237)@b@ at com.xwood.engine.publisher.slave.freemarker.FmtGenerator.create(FmtGenerator.java:409)@b@ at com.xwood.engine.publisher.slave.freemarker.FmtGenerator.corrcreate(FmtGenerator.java:199)@b@ at com.xwood.engine.publisher.core.processunit.SlavePublishEngineProcessUnit.createContent(SlavePublishEngineProcessUnit.java:125)@b@ at com.xwood.engine.publisher.core.processunit.SlavePublishEngineProcessUnit.createPageListContent(SlavePublishEngineProcessUnit.java:69)@b@ at com.xwood.engine.publisher.core.processunit.SlavePublishEngineProcessUnit.execute(SlavePublishEngineProcessUnit.java:149)@b@ at com.xwood.engine.publisher.core.processunit.SlavePublishEngineProcessUnit.run(SlavePublishEngineProcessUnit.java:47)@b@ at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)@b@ at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)@b@ at java.util.concurrent.FutureTask.run(FutureTask.java:138)@b@ at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)@b@ at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206)@b@ at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)@b@ at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)@b@ at java.lang.Thread.run(Thread.java:662)
二、解决方法
通过最新高版本驱动ojdbc6.jar包替换ojdbc14.jar解决问题