Tomcat - java.lang.UnsupportedClassVersionError:Unsupported major.minor version 51.0 (unable to load class com.microsoft.sqlserver.jdbc.SQLS

今天使用Tomcat连接sql Server 2008 enterprise的时候,报错:

HTTP Status 500 - Servlet execution threw an exception

type Exception report

message Servlet execution threw an exception

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

exception

javax.servlet.ServletException: Servlet execution threw an exception
	spt.servlet.filter.EncodingFilter.doFilter(EncodingFilter.java:24)

root cause

java.lang.UnsupportedClassVersionError: com/microsoft/sqlserver/jdbc/SQLServerDriver : Unsupported major.minor version 51.0 (unable to load class com.microsoft.sqlserver.jdbc.SQLServerDriver)
	org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2961)
	org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
	java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
	java.lang.Class.forName0(Native Method)
	java.lang.Class.forName(Class.java:169)
	spt.server.jdbc.db.BasicDB.getConnection(BasicDB.java:260)
	spt.server.jdbc.db.BasicDB.getPreparedStatement(BasicDB.java:268)
	spt.server.jdbc.db.BasicDB.getAQIDayByCityCodeAndDate(BasicDB.java:136)
	spt.service.AQIDayService.getAQIDay(AQIDayService.java:33)
	spt.servlet.JsonServlet.doPost(JsonServlet.java:34)
	spt.servlet.JsonServlet.doGet(JsonServlet.java:53)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	spt.servlet.filter.EncodingFilter.doFilter(EncodingFilter.java:24)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.57 logs.
Apache Tomcat/7.0.57

 JDK的版本号对应:

  • J2SE 9 = 53
  • J2SE 8 = 52
  • J2SE 7 = 51
  • J2SE 6.0 = 50
  • J2SE 5.0 = 49
  • JDK 1.4 = 48
  • JDK 1.3 = 47
  • JDK 1.2 = 46
  • JDK 1.1 = 45

由此可知,上述错误是由于jTDS需要jdk7,而你使用的JDK版本不是jdk7。

ref: http://shalousoft.com/go_newsForum.action?op=d3a91dac-6b7c-11e3-8e31-5254001578d1

posted @ 2015-01-30 10:23  wonkju  阅读(4865)  评论(0编辑  收藏  举报