使用c3p0连接DB2数据,在装入驱动程序时发生了安全性异常

发布于 2021-12-04 11:03:54 字数 4129 浏览 831 评论 7

@JFinal 你好,想跟你请教个问题:

使用Jfinal_Weixin的框架,需要与DB2进行连接查询功能。启动进行连接时,会出现以下错误:

[INFO]-[Thread: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1]-[com.mchange.v2.c3p0.SQLWarnings.logAndClearWarnings()]: Origination unknown: [10228][11541][3.62.56] 在装入驱动程序时发生了安全性异常。 ERRORCODE=4223, SQLSTATE=null
com.ibm.db2.jcc.am.SqlWarning: Origination unknown: [10228][11541][3.62.56] 在装入驱动程序时发生了安全性异常。 ERRORCODE=4223, SQLSTATE=null
 at com.ibm.db2.jcc.am.fd.b(fd.java:207)
 at com.ibm.db2.jcc.am.fd.b(fd.java:258)
 at com.ibm.db2.jcc.am.ib.a(ib.java:893)
 at com.ibm.db2.jcc.am.jb.a(jb.java:579)
 at com.ibm.db2.jcc.am.jb.<init>(jb.java:560)
 at com.ibm.db2.jcc.t4.b.<init>(b.java:316)
 at com.ibm.db2.jcc. DB2SimpleDataSource.getConnection(DB2SimpleDataSource.java:214)
 at com.ibm.db2.jcc.DB2Driver.connect(DB2Driver.java:460)
 at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
 at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
 at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
 at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
 at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
 at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
 at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
 at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
Caused by: java.security.PrivilegedActionException: java.lang.ClassNotFoundException: sun.io.ByteToCharConverter
 at java.security.AccessController.doPrivileged(Native Method)
 at com.ibm.db2.jcc.am.ib.s(ib.java:879)
 at com.ibm.db2.jcc.am.ib.<clinit>(ib.java:513)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Unknown Source)
 at com.ibm.db2.jcc.DB2BaseDataSource.class$(DB2BaseDataSource.java:265)
 at com.ibm.db2.jcc.DB2BaseDataSource.<clinit>(DB2BaseDataSource.java:265)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Unknown Source)
 at com.ibm.db2.jcc.DB2Driver.class$(DB2Driver.java:68)
 at com.ibm.db2.jcc.DB2Driver.<clinit>(DB2Driver.java:71)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Unknown Source)
 at com.mchange.v2.c3p0.DriverManagerDataSource.ensureDriverLoaded(DriverManagerDataSource.java:100)
 at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:132)
 ... 7 more
Caused by: java.lang.ClassNotFoundException: sun.io.ByteToCharConverter
 at java.net.URLClassLoader$1.run(Unknown Source)
 at java.net.URLClassLoader$1.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:430)
 at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:383)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Unknown Source)
 at com.ibm.db2.jcc.am.jg.run(jg.java:19)
 ... 22 more

 

请教一下大家,这个问题是什么原因,并且如何解决,谢谢!!~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

风柔一江水 2021-12-09 13:18:42

楼上的大哥,[org.hibernate.engine.jdbc.spi.SqlExceptionHelper] Origination unknown: [10228][11541][4.13.127] 在装入驱动程序时发生了安全性异常。 ERRORCODE=4223, SQLSTATE=null ,我这里db2数据库是9.7

我用的jar的版本 :

<dependency>
  <groupId>com.ibm.db2</groupId>
  <artifactId>db2jcc</artifactId>
  <version>10.1</version>
</dependency>

数据库可以正常链接,但是在日志窗口一直会报这个警告错误?大佬谁知道怎么回事?

风苍溪 2021-12-09 13:16:11

詹哥分析的有道理。确实应该是jar包的问题

鹤舞 2021-12-09 13:14:24

不是哦,我连接的另一台服务器的数据库,不是本地的。

已下线请稍等 2021-12-09 13:13:05

你的连接 配置的是localhost还是127.0.0.1?我用localhost的时候回报错,你试一下~

草莓味的萝莉 2021-12-09 07:11:55

你好,请问这个跟db2jcc.jar包有关系吗?我使用的是Jre1.8版本的,发现charsets.jar下面sun.io包里没有ByteToCharConverter。难道是java的版本不对吗?

白龙吟 2021-12-09 07:06:59

    注意看这句: Caused by: java.security.PrivilegedActionException: java.lang.ClassNotFoundException

    但凡是 ClassNotFoundException 多数是缺少 jar 包或者 jar 包版本不对的原因。

叹沉浮 2021-12-06 10:24:04

我去找过,jre1.8下面的确没有sun.io.ByteToCharConverter这个包。但是因为其他人都可以正常连接,所以我怀疑是jdk版本的问题,因此找了一下关于DB2与JDBC的一个关系,如下链接

http://www-01.ibm.com/support/knowledgecenter/#!/SSEPGG_10.5.0/com.ibm.db2.luw.qb.server.doc/doc/r0011932.html?cp=SSEPGG_10.5.0%2F2-0-1-1

目前JDBC的驱动仅支持到1.7版本,我换了jre1.7后,就可以整正常连接。谢谢大家!特别谢谢詹哥的指导~!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文