先说下题目:因为是在我进行处理项目升级时同时遇到了上面的问题,一般都会遇到,所以就一并说了

不罗嗦了,正题:

在本地服务器中提供tomcat6,然后在myeclipse中配置severs tomcat,将本地tomcat6添加

如果你的web页面里面的EL表达式使用了#{}表达式,或者配置了severlet依赖的jstl版本,升级会遇到问题的原因为:tomcat5和tomcat6使用的jsp/severlet规范不同

Tomcat6   JSP2.1 / Servlet2.5 / JSTL2.0

Tomcat5   JSP2.0 / Servlet2.4 / JSTL1.1

Tomcat4   JSP1.2 / Servlet2.3 / JSTL1.0

在JSP2.1以前,JSP编译器并不解析#{}表达式(不是保留的表达式),因为在之前的JSP中,EL表达式是${}来表示的;正因为#{}不是JSP保留的表达式,所以在JSP中,EL表达式采用了#{}表示的;同时,在Struts2中,OGNL(Object-Graph Navigation Language,一种功能强大的表达式语言)也是用#{}表示的;  
然而,在JSP2.1规范中,SUN为了统一JSP的EL表达式语法,将#{}作为了JSP的保留的表达式(SUN号称在纯jsp中也能够直接引用JSF的managedBean),也就是说,采用JSP2.1规范的服务器会自动编译#{}表达式,所以EL表达式不能再使用#{}表达式

问题已经知道了,接下来解决之:

1、将web-inf下lib中的jstl外部jar包进行替换:JSTL1.2(jstl-1.2.jar)替换JSTL1.1(standard-1.1.jar和jstl-1.1.jar)

2、web.xml必须指定使用servlet 2.5 和JSP2.1的规范:
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd">

这里注意一下:tomcat版本是可以向下兼容servlet规范和jsp规范的,例如上面的,如果项目中没有用到tomcat6对应的servlet2.5规范和jsp2.1规范,可以还是用servlet2.4和jsp2.0规范(针对xml文件的配置)

3、此步的解决方法有多种:

第一:在web.xml文件中添加

<jsp-property-group>
  <deferred-syntax-allowed-as-literal>
   true
  </deferred-syntax-allowed-as-literal>
 </jsp-property-group>

第二:在jsp页面中添加<%@ page contentType="text/html; charset=UTF-8" deferredSyntaxAllowedAsLiteral="true"%>

以上两种方式我都试过了,没起作用,

我采用第三种:将#{。。。。}更改为\#{。。。。}

还有第四种方法:将页面中所用使用的#{}表达式换掉,

ps:当你选择tomcat6时还可能遇到一个问题,那就是控制台

严重: The web application [/codeMarket] registered the JBDC driver[.........]   but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

如果你报错了上面的这个严重,那么你的tomcat版本一定是在6.0.25之上的

原因:tomcat 6.025以后在sever.xml中引入了内存泄露侦测,对于垃圾回收不能处理的对像,它就会做日志。

解决办法:

1、tomcat版本换为6.0.25之下的

2、在tomcat的server.xml文件中,把
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>这个监听给关了,对项目有没有影响,如果没有关闭监听前没有报此类异常,则关闭监听没有影响,如果关闭监听前有相关异常抛出,那么影响就相当于没有痛觉的人,生病了也不知道,网上并没有治本的方法,因为治本的方法是把你的内存泄露问题处理好

解决了  吧mysql-connection-java.jar放在tomcat的lib就可以了

The web application [/zzti] registered the JDBC driver [com.microsoft.sqlserver.jdbc.SQLServerDriver的更多相关文章

  1. 严重: The web application [] registered the JDBC driver [com.microsoft.sqlserver.jdbc.SQLServerDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDB

    idea项目启动报如下错误, 网上的方法都试了都没用, 一直没解决, 干掉项目, 重新从svn检出就好了...坑 啊 Root WebApplicationContext: initializatio ...

  2. The web application [/codeMarket] registered the JBDC driver[.........] but failed to unregister it when the web application was stopped. To prevent

    如果你报错了上面的这个严重,那么你的tomcat版本一定是在6.0.25之上的 原因:tomcat 6.025以后在sever.xml中引入了内存泄露侦测,对于垃圾回收不能处理的对像,它就会做日志. ...

  3. com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect

      问题描述:最简单的数据库连接报错,到主机  的 TCP/IP 连接失败.(win 7 操作系统) 错误信息: com.microsoft.sqlserver.jdbc.SQLServerExcep ...

  4. 解决 01-Jul-2016 10:49:05.875 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [ROOT] registered the JDBC driver [com.mysql.jdbc.D

    01-Jul-2016 10:49:05.875 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoade ...

  5. The web application registered the JDBC driver * but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    最近使用了最新版的tomcat9,使用jdbc链接mysql数据库.关闭tomcat过程中出现警告 13-Sep-2017 22:22:54.369 WARNING [main] org.apache ...

  6. The web application [ ] registered the JDBC driver [net.sourceforge.jtds.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver

    出现以下错误时,我找了很多方法,都未解决,网上有很多,最后我实在无奈,怀疑会不会是Tomcat的原因,更换了一个版本之后就好了.The web application [ ] registered t ...

  7. registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    问题是tomcat的版本问题,tomcat新检测机制导致的这个问题,换版本可以解决问题,但不建议这么做,租用服务器不是你说换就换的.其实问题根源是BasicDataSource,BasicDataSo ...

  8. 解决:The web application [] registered the JDBC driver [] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    问题描述 在将Spring Boot程序打包生成的war包部署到Tomcat后,启动Tomcat时总是报错,但是直接在IDEA中启动Application或者用"java -jar" ...

  9. mySql版本的相关问题:com.mysql.cj.jdbc.Driver和com.mysql.jdbc.Driver

    Mysql版本的相关问题:com.mysql.cj.jdbc.Driver和com.mysql.jdbc.Driver 1. 在使用mysql时,控制台日志报错如下: Loading class `c ...

随机推荐

  1. POJ 2251 Dungeon Master bfs 难度:0

    http://poj.org/problem?id=2251 bfs,把两维换成三维,但是30*30*30=9e3的空间时间复杂度仍然足以承受 #include <cstdio> #inc ...

  2. 安装Ubuntu之后的配置

    经常装系统或者给人装系统,这些配置还是记一下,方便恢复到以前的环境 删除libreoffice sudo apt-get remove libreoffice-common 删除Amazon的链接 s ...

  3. C++设计模式之职责链模式

    代码实现: // chainResbonsibility.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stri ...

  4. IOS下使用多线程

    ios有三种主要方法:1.NSThread.2.NSOperation.3.GCD. 1.  NSThread: 调用方法如下:如果需要函数参数的话,可以通过Object传递. 1.1:[NSThre ...

  5. 2018.12.25 SOW

    1. Understanding Customer Requirements 11.1. Project Overview 21.2. System Requirements 21.3. Indust ...

  6. DIY远程控制开关(tiny6410+LED+yeelink+curl)

    上一次,介绍了如何实现远程监控室内温度,大家伙反响还是很热烈的,笔者很欣慰,独乐乐不如众乐乐啊.不过话说回来,那个实现只能是远程监测家中温度,假如发现家里热得很,想远程打开空调开关提前降降温,回家后不 ...

  7. SQL中注意数据类型对性能的影响

    在数据存储的时候有时我们不太注意字符编码对性能影响,但小问题往往造成很大的影响.在数据量小的时候感觉不出来,一旦上到百万级以上的时候就非常明显了 看下面两个SQL语句 ---SQL1 SELECT * ...

  8. 常用Mysql存储引擎--InnoDB和MyISAM简单总结

    常用Mysql存储引擎--InnoDB和MyISAM简单总结 2013-04-19 10:21:52|  分类: CCST|举报|字号 订阅     MySQL服务器采用了模块化风格,各部分之间保持相 ...

  9. 接口测试工具Soapui5.1.2参数化之Properties20150924

    上次用天气预报的来给大家演示了下如何创建项目.测试套件.测试用例的操作,今天演示下如何参数化,废话不多说,跟着操作即可: 1.在一个用例中有两个步骤,我们想将第一个步骤中的响应中的值,传入第二个步骤中 ...

  10. 第2课 C到C++的升级

    C与C++的关系: C++在C语言的基础上进行的升级最重要的是两个方面: 1.类型的加强,C++更称得上是高级语言,C++语言对于类型的检查更严格 2.面向对象的支持,天生支持面向对象软件开发方法学 ...