处理程序处理失败;嵌套异常是java.lang.NoClassDefFoundError:sun / io / ByteToCharConverter

时间:2015-01-16 08:38:35

标签: java spring tomcat

我正在尝试将spring 3.0,hibernate 3.0与db2 8.x数据库集成,但我发现以下异常。 请任何机构都可以帮我解决这个问题。

先谢谢。

输入例外报告

message Handler processing failed; nested exception is java.lang.NoClassDefFoundError: sun/io/ByteToCharConverter

description The server encountered an internal error that prevented it from fulfilling this request.

exception 

org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.NoClassDefFoundError: sun/io/ByteToCharConverter`
    org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:820)
    org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:552)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)


root cause 

java.lang.NoClassDefFoundError: sun/io/ByteToCharConverter
    com.ibm.db2.jcc.a.o.a(o.java:149)
    com.ibm.db2.jcc.b.d.a(d.java:923)
    com.ibm.db2.jcc.b.bd.a(bd.java:1575)

3 个答案:

答案 0 :(得分:0)

可能是你的低级java版本。 请查看以下链接到db2数据库的java版本。


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

答案 1 :(得分:0)

我遇到了与WildFly相同的问题。我不确定,但可能是你的Java EE容器有一个不允许在sun.io中使用Java类的类加载器。*?

Stackoverflow上的一些答案表明必须在服务器配置中激活sun.jdk模块以允许使用sun。*类。

答案 2 :(得分:0)

将artifactId db2jcc更新为1.4.2版并将db2jcc_license_cu更新为1.4.2 groupId为cn.guoyukun.jdbc

<dependency>
<groupId>cn.guoyukun.jdbc</groupId>
<artifactId>db2jcc</artifactId>
<version>1.4.2</version>
</dependency>

<dependency>
<groupId>cn.guoyukun.jdbc</groupId>
<artifactId>db2jcc_license_cu</artifactId>
<version>1.4.2</version>
</dependency>