Unsupported major.minor version 52.0
版本过低
[2021-02-07 08:25:52,537] Artifact javaweb-blog:war exploded: Error during artifact deployment. See server log for details.
java.lang.UnsupportedClassVersionError: com/nic/filter/AdminFilter : Unsupported major.minor version 52.0 (unable to load class com.nic.filter.AdminFilter)
一直报错,网上找一直是说和jdk的版本有关,但是jdk的版本尝试更换几个都无效。事实上是Tomcat的版本问题,项目开始用的是Tomcat8.1升级至8.5.34即可(升级Tomcat9可以否?会对下兼容吗?trytry)
org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0]
warning:4.0太高
org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0]
用到servlet的页面跳转404
web.xml配置有误
页面能访问,也成功部署到tomcat下面的weapps文件夹下面,但是在进行页面跳转的过程中,会出现下面的404情况。分析之后是我这个项目是新建的一个空项目,然后代码是之前在eclipse下运行过的,而后直接将内容代码复制过来,却没复制web.xml,导致现项目的web.xml是“空的”,无配置。
Tomcat路径配置有误
还有一种情况,就是tomcat配置过程中的那两个路径也要注意下
调整为如下配置,不然会出现访问/jsp-peojectname/jsp-peojectname/index.jsp页面为404的情况
其他类型错误
可能还有其他类型错误,参考以下的总结
- Web开发:关于Tomcat出现The origin server did not find a current representation for the target resourc...的问题
数据库报错
navicat也不能查看该数据库
HTTP Status 500 – Internal Server Error
Type Exception Report
Message get connection error!
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
java.lang.RuntimeException: get connection error!
com.nic.util.JdbcUtil.getConnection(JdbcUtil.java:55)
com.nic.dao.ArticleDao.findArticle(ArticleDao.java:56)
com.nic.service.ArticleService.findArticle(ArticleService.java:20)
com.nic.servlet.PostlistServlet.doGet(PostlistServlet.java:50)
javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Root Cause
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1309)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1137)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:264)
com.nic.util.JdbcUtil.getConnection(JdbcUtil.java:52)
com.nic.dao.ArticleDao.findArticle(ArticleDao.java:56)
com.nic.service.ArticleService.findArticle(ArticleService.java:20)
com.nic.servlet.PostlistServlet.doGet(PostlistServlet.java:50)
javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Note The full stack trace of the root cause is available in the server logs.
Apache Tomcat/8.5.34
初步分析是用的phpstudy里面的mysql数据库不能生效,删除电脑之前的mysql,用phpstudy数据库恢复
但是还会报错,判断应该是代码文件出错【不过不用将这个jar包导入到lib文件夹下(反而会报错),只需要将其导入到tomcat文件夹下的lib文件夹,即可】
📎mysql-connector-java-5.1.49.jar(或者直接上网搜再下载)
评论区