`

tomcat6 vs tomcat7

阅读更多

 

 Tomcat6 vs Tomcat7

试用 Tomcat7.x 与 Tomcat6.x 的明显不同 + Context 填写方法 + 默认应用配置方法

http://blog.csdn.net/shanelooli/article/details/7408675

 

Tomcat7 与tomcat6之间得区别---${new.title}

http://my.oschina.net/7shell/blog/57349

 

Tomcat6--> Tomcat7记录tomcat迁移出现的问题

http://www.cnblogs.com/huxiaoyun90/archive/2013/04/29/3050649.html

 

Tomcat6 Tomcat7对比测试

http://blog.csdn.net/yydcj/article/details/8487037

http://www.oschina.net/question/86179_9487

 

Tomcat 7 热部署配置

http://linhao315.iteye.com/blog/1341489

 

使用 Tomcat 7 新的连接池 —— Tomcat jdbc pool

http://www.oschina.net/question/12_36910

 

Tomcat7 七大新特性和新增功能

http://cuizhihua.iteye.com/blog/1905962

http://andrius.miasnikovas.lt/2010/07/whats-new-in-tomcat-7/

http://developer.51cto.com/art/201006/208440.htm

 

 

 

1. tomcat 7对EL表达式的语法要求比较严格,例如"${new.title}", 因包含关键字new就会导致解析出错。

这个时候为我们可以修改配置文件,忽略关键词的设置:修改tomcat属性,忽略对EL表达式的关键字检查:

修改$CATALINA_BASE/conf/catalina.properties文件,添加org.apache.el.parser.SKIP_IDENTIFIER_CHECK=true选项。

另外,& 在url重写中需要修改为&要不然会报错

 

2. 关于数据库驱动程序加载。受数据库驱动异常困扰的同胞们,Tomcat7 下边因为 Tomcat 限定了类加载执行时静态代码的执行,需要在生成对象的时候才能够真正执行,所以在 Tomcat6 以前大家熟悉的数据库驱动程序加载方式:

  1. Class<?> cls = com.mysql.jdbc.Driver.class;  

或者

  1. Class.forName("com.mysql.jdbc.Driver");  

都已经不能用了。在使用 DriverManager 生成的数据库连接的时候,会出现“No suitable driver found for jdbc”这个异常。

 

现在正确的数据库驱动程序加载方式,要求生成数据库驱动类的对象。推荐 

  1. com.mysql.jdbc.Driver.class.newInstance();  

这种方式不用处理异常,而且生成的无用对象会最短时间被垃圾回收。

 

当然了,也可以用一个引用类型变量把此对象接出来,但没有什么实际用途吧……  

  1. java.sql.Driver driver = com.mysql.jdbc.Driver.class.newInstance();  

其中 java.sql.Driver 是各个数据库管理系统提供的驱动程序类的接口,属于 JDBC 规范,适合用 import java.sql.Driver; 进行缩写。 

 

3. 线程启动的问题。因为 Tomcat7 或者 -server 方式运行的爪哇虚拟机(JVM)的一些我尚未掌握的保护机制,所以当一个线程经历空循环时,就会被架空。  

  1. while(flag) { }  

于是通过 flag 作为线程控制变量的控制方法,就没办法继续使用了。这个时候,要时常跳过这个人工卡死的线程,以便其能够总在执行而不会真的陷入僵死。 

 


 
  1. while(flag) { Thread.yield(); }  

 

3. org.apache.catalina.mbeans.ServerLifecycleListene问题描述:java.lang.ClassNotFoundException: org.apache.catalina.mbeans.ServerLifecycleListener

发现居然找不到这个类,然后把catatina.jar下载下来反编译一看mbenas这个文件夹居然是空的

解决办法:

tomcat 6.0.18以前,conf/server.xml里面的配置有这项

<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />注释掉就可以了 

<!--<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> -->

 

4. taglib definition not consistent with specification version

问题描述:java.lang.IllegalArgumentException: taglib definition not consistent with specification version

tomcat 6.0.18里面的web.xml里面的tag配置如下:

 <taglib> 

        <taglib-uri>http://java.sun.com/jstl/core</taglib-uri> 

        <taglib-location>/WEB-INF/c.tld</taglib-location> 

 </taglib> 

 

解决办法:

tomcat 7.0.25里面web.xml的tag配置应该如下所示

 <jsp-config> 

     <taglib> 

         <taglib-uri>http://java.sun.com/jstl/core</taglib-uri> 

         <taglib-location>/WEB-INF/c.tld</taglib-location> 

     </taglib> 

 </jsp-config>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    tomcat6 tomcat7

    【标题】:“Tomcat6与Tomcat7配置详解” 【描述】:“本文档将详细介绍如何在JDK6和JDK7环境下配置Tomcat6.0和Tomcat7.0服务器,包括环境变量设置、服务器启动及Web应用创建。” 【标签】:“Tomcat6配置” ...

    能用的tomcat6

    【标题】:“能用的Tomcat6” 【正文】: Tomcat6是Apache软件基金会的Jakarta项目中的一个核心项目,它是一个开源的、免费的Web应用服务器,主要用于部署Java Servlet和JavaServer Pages(JSP)应用程序。这个“能...

    tomcat6和tomcat7

    标题中的“tomcat6和tomcat7”指的是Apache Tomcat的两个不同版本。Apache Tomcat是一款开源的Java Servlet容器,它实现了Java Servlet和JavaServer Pages(JSP)规范,是运行Java Web应用的重要服务器组件。Tomcat6...

    Tomcat6 纯净版

    【标题】"Tomcat6 纯净版" 指的是Apache Tomcat服务器软件的第6个主要版本的一个纯净安装包。Tomcat是Apache软件基金会的Jakarta项目中的一个核心项目,它是一个开源的、免费的应用服务器,主要用于运行Java Servlet...

    tomcat6、tomcat7、tocmat8、tomcat9 linux版、windox版百度云

    tomcat6、tomcat7、tocmat8、tomcat9 linux版、windox版 32位 64位

    tomcat6的源码

    Apache Tomcat 6是一款广泛应用的开源Java Servlet容器,它实现了Java EE中的Servlet和JSP规范。这个源码包,"apache-tomcat-6.0.43-src",是Tomcat 6的官方源代码,非常适合开发者进行深入学习和自定义修改。以下是...

    tomcat6,用于idea适配低版本的tomcat

    标题中的“tomcat6”指的是Apache Tomcat 6,这是一个开源的应用服务器,主要用来部署和运行Java Servlet和JavaServer Pages(JSP)应用程序。在Java Web开发领域,Tomcat是应用最广泛的轻量级服务器之一,尤其对于...

    Tomcat6 Tomcat6。0

    Tomcat6 Tomcat6。0 tomcatTomcat6 Tomcat6。0 tomcatTomcat6 Tomcat6。0 tomcatTomcat6 Tomcat6。0 tomcatTomcat6 Tomcat6。0 tomcatTomcat6 Tomcat6。0 tomcatTomcat6 Tomcat6。0 tomcat

    tomcat 版本6、7、8

    Tomcat6、Tomcat7和Tomcat8是三个重要的版本,每个版本都有其特定的功能改进和性能提升,下面将详细介绍它们之间的差异和演化。 【Tomcat6】: Tomcat6是基于Java Servlet 2.5和JavaServer Pages 2.1标准的。这个...

    tomcat 7 和 tomcat 8

    1. 发布时间:Tomcat 7在2011年发布,作为Tomcat 6的升级版,提供了对Java EE 6的支持。 2. Java EE支持:Tomcat 7支持Servlet 3.0、JSP 2.2、EL 2.2和WebSocket 1.0等规范,使得开发者能够利用新的特性进行Web应用...

    Tomcat 6、7、8全部三版

    Tomcat 7是Java EE 6的实现,提供了对Servlet 3.0、JSP 2.2和EL 2.2的支持。此版本引入了许多增强,包括更好的并发处理、更灵活的部署选项以及增强了的安全性。Tomcat 7也增加了对WebSocket协议的支持,这使得实时...

    tomcat7tomcat8tomcat9

    Tomcat 7还加强了与Java EE 6的兼容性,提供了一个更稳定的运行环境。 Tomcat 8是在2013年推出的,它是Tomcat历史上最大的一次更新。这个版本引入了Servlet 3.1、JSP 2.3和EL 3.0等新规范,增加了对WebSocket的支持...

    tomcat7,tomcat8,tomcat9

    Tomcat7、Tomcat8和Tomcat9是不同版本的Tomcat,每个版本都有其特性和改进。 **Tomcat7**: Tomcat7是2011年发布的,它主要支持Java Servlet 3.0和JSP 2.2规范。这个版本引入了一些重要改进,包括增强的安全性、更...

    Tomcat 6 Linux版

    编写一个名为 `tomcat6` 的启动脚本,并将其放置在 `/etc/init.d/` 目录下。然后,使用 `chkconfig` 添加到开机启动: ``` chkconfig --add tomcat6 chkconfig tomcat6 on ``` 7. **配置防火墙** 如果Linux...

    Tomcat 6,7,8三个版本

    《Tomcat 6、7、8:版本差异与技术特性》 Apache Tomcat,作为一款广泛应用的开源Java Servlet容器,其不同版本之间的差异和技术特性对于开发者来说至关重要。本篇文章将聚焦于Tomcat 6、7、8三个版本,探讨它们在...

    tomcat6 32位系统

    标题中的“tomcat6 32位系统”指的是Apache Tomcat 6版本,这是一个专为32位操作系统设计的开源Web应用服务器,主要用于部署和运行Java Servlet和JavaServer Pages(JSP)应用程序。Tomcat是Java EE(现在称为...

    tomcat6免安裝版

    tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6tomcat6

    tomcat6+7+8大合集

    【标题】"Tomcat6+7+8大合集"是一个综合性的资源包,包含了Apache Tomcat服务器的三个主要版本,即Tomcat 6、Tomcat 7和Tomcat 8。这个合集旨在为用户提供方便,使得在不同环境下可以根据JDK版本选择适合的Tomcat...

    tomcat6;tomcat7;合集

    apache-tomcat-6.0.14; apache-tomcat-6.0.43; apache-tomcat-7.0.41 ;apache-tomcat-7.0.55; apache-tomcat-7.0.59;

Global site tag (gtag.js) - Google Analytics