The Apache Tomcat Servlet/JSP Container

Apache Tomcat 7

7.0.104版,2020年5月7日
Apache Logo

Links

用户指南

Reference

Apache Tomcat开发

Changelog

Tomcat 7.0.104 (violetagg)
Catalina
add 4599564237 :对齐的Tomcat与Apache httpd和基于在不区分大小写的方式的文件扩展名进行MIME类型映射. (市场)
add 59203 :在Web应用程序创建的,在Web应用程序停止时未被Web应用程序停止的线程上调用Thread.stop() (如果配置为这样做),请先尝试中断该线程. 根据Govinda Sakhare的要求. (市场)
fix 64226 :由于日期格式被重用,因此在解析日期后重置时区. Gary Thomas提交的测试用例. (雷姆)
fix 64265 :修复了默认servlet执行的ETag比较. 默认Servlet始终使用弱比较. (市场)
fix 在配置文件中使用${...}属性替换时,添加对默认值的支持. 根据Bernd Bohmann提供的拉动请求. (市场)
fix 重新整理针对64021的修复程序,以更好地支持使用自定义类加载器的Web应用程序,该类加载器从非标准位置加载资源. (市场)
update 从SC_NOT_FOUND的错误页面消息中删除多余的唯一路径/ URI. (米高)
add 在DefaultServlet for SC_NOT_FOUND中添加更多描述性错误消息. (米高)
add 64386 :WebdavServlet不会为资源集合发送" getlastmodified"属性. (米高)
fix 64398 :由于可能的冲突,将用于属性替换的默认值分隔符更改为:- . 现在的语法为${name:-default} . (雷姆)
add 使用FileStore时,改进对存储位置的验证. (市场)
Coyote
add 配置HTTP连接器时,请警告是否为URIEncoding指定的编码不是RFC7230要求的US-ASCII的超集. (市场)
fix 64240 :确保一致地处理URI之后在请求行上包含其他数据的HTTP / 0.9请求. 这样的请求现在将始终被视为HTTP / 1.1. (市场)
add 将系统属性org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH替换为Connector属性encodedSolidusHandling ,除了拒绝和解码此类序列外,它还添加了一个附加选项以将/序列传递给应用程序而不对其进行解码, . (市场)
fix 当报告提供的请求行包含无效的组件时,将有问题的数据包括在错误消息中. (市场)
Jasper
add Add support for specifying Java 14 (with the value 14) and Java 15 (with the value 15) as the compiler source and/or compiler target for JSP compilation. If used with an ECJ version that does not support these values, a warning will be logged and the latest supported version will used. (markt)
update 从SC_NOT_FOUND的错误页面消息中删除多余的唯一路径/ URI. (米高)
add 在DefaultServlet for SC_NOT_FOUND中添加更多描述性错误消息. (米高)
fix 确保当JSP具有内部类时,与Java Eclipse编译器(ECJ)接口的Jasper代码使Jasper能够使用ECJ 4.14及以后的版本编译JSP. (市场)
Cluster
code Refactor the creation of DeltaRequest objects to make it simpler to use custom implementations. Based on a pull request provided by Thomas Stock. (markt)
Web applications
fix 更正文档Web应用程序,以删除对org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH系统属性的引用,从而更改在URI中解释序列\方式. (市场)
add 在TLS连接器文档中添加有关不同密钥库类型以及如何配置它们的部分. (市场)
Other
add 提高质量并扩大Apache Tomcat随附的法语翻译的覆盖范围. Tom Bens提供的贡献. (雷姆)
add 扩展Apache Tomcat随附的中文翻译的范围. 李亚州提供的贡献. (市场)
fix 64270 :设置的记录默认的umask 0027时使用JSVC经由daemon.sh并允许所使用的umask为通过被配置UMASK环境变量,因为它使用时是catalina.sh . (市场)
fix 不建议使用LOGGING_CONFIG环境变量,并将其替换为CATALINA_LOGGING_CONFIG环境变量,以避免与使用LOGGING_CONFIG其他组件发生冲突. (市场)
update 将JUnit更新到版本4.13. (市场)
code 尽可能重构以使用参数化的Collection构造函数. Lars Grefer提供的拉取请求. (市场)
code 通过Collections.toArray()重构为使用空数组. Lars Grefer提供的拉取请求. (市场)
code 符合条件的重构循环在满足条件后立即退出. Lars Grefer提供的拉取请求. (市场)
code 重构批量添加到集合以使用addAll()而不是循环. Lars Grefer提供的拉取请求. (市场)
update 将Tomcat本机库的打包版本更新为1.2.24. (市场)
code 尽可能重构以使用增强的for循环. Lars Grefer的拉取请求. (市场)
add 改进对IntelliJ IDEA的IDE支持. Lars Grefer提供的补丁. (市场)
Tomcat 7.0.103 (violetagg)发行于2020-03-19
Catalina
fix 64191 :针对64021的修订引入了针对SCI回归的其他修订,例如,在嵌入时,当执行SCI服务查找的类加载器不是Tomcat Web应用程序类加载器时. (市场)
Tomcat 7.0.102 (violetagg)未发布
Coyote
fix 64210 :更正了HTTP标头验证的改进中的回归问题,如果在TCP数据包之间拆分了CRLF序列,则会导致请求被错误地视为无效. 改进对请求行的验证,包括对HTTP / 0.9请求的验证. (市场)
Tomcat 7.0.101 (violetagg)未发布
Catalina
fix 将Tomcat嵌入式切换为从默认的web.xml生成的属性文件中加载MIME类型映射,这样无论Tomcat如何启动,MIME类型映射都是一致的. (市场)
fix 当依靠HttpServlet生成HEAD响应并且GET响应使用分块时,请确保HEAD响应与GET响应一致. (市场)
fix 64153 :确保Web应用程序类加载器的父级设置一致. (市场)
fix 64166 :确保HttpServletResponse.getHeaderNames()返回的名称是唯一的. (市场)
add 64189 :将Web应用程序版本String公开为名为org.apache.catalina.webappVersionServletContext属性. (市场)
fix 64191: Fix an SCI support regression that was caused by a JAR path lookup error in the classloader findResources. (remm)
codeorg.apache.tomcat.util.digester.Digester$EnvironmentPropertySource重命名为org.apache.tomcat.util.digester.EnvironmentPropertySource . 旧类仍然可用,但已弃用. Bernd Bohmann提供的补丁. (市场)
addStandardManagerPersistentManager添加新的属性persistAuthentication ,以支持身份验证持久性. Carsten Klein提供的补丁. (市场)
Coyote
fix 将IIS使用的TLS请求属性添加到AJP连接器将始终接受的属性中. (市场)
fix 现在,零长度的AJP机密将表现为好像未指定它一样. (雷姆)
fix 在容器线程上调用complete()之前,当连接器暂停时,允许异步请求完全完成. (市场)
Web applications
add 展开有关AJP连接器的address属性的文档. (市场)
Other
add 扩展Apache Tomcat随附的法语翻译的范围. (雷姆)
add 扩展Apache Tomcat随附的韩语翻译的范围. B. Cansmile Cha提供的贡献. (市场)
add 64190 :添加了对在JULI的OneLineFormatter使用的时间戳中指定毫秒(使用SSSSSS )的OneLineFormatter . (市场)
fix 64206 :更正了7.0.100中引入的回归,这意味着使用Windows Installer时指定的HTTP端口将被忽略,并且始终使用8080. (市场)
Tomcat 7.0.100 (violetagg)发行于2020-02-14
Catalina
fix 在JNDIRealm中不使用GSSCredential时,避免无用的环境还原. (雷姆)
fix 58577 :搜索要通过JMXProxyServlet调用的MBean操作时,请遵守参数计数. (舒尔茨)
add 62755 :增加了在嵌入Tomcat时选择不添加默认的web.xml配置并通过addWebapp()添加上下文的addWebapp() . 调用setAddDefaultWebXmlToWebapp(false)以阻止自动配置. (isapir /市场)
fix 64008 :澄清/扩展Tomcat#addWebapp()和相关方法的Javadoc. (市场)
code 弃用JmxRemoteLifecycleListener因为JRE附带的远程JMX功能现在可以使用它提供的功能. 该侦听器将在Tomcat 10中删除,并且可能会在2020-12-31之后的某个时间从Tomcat 7.0.x中删除. (市场)
fix 64011JNDIRealm不再通过LDAP进行身份验证. (米高)
fix 64021 :请确保在应用程序提供的SCI之前始终加载容器提供的SCI. 请注意,在容器和应用程序都提供相同SCI的情况下,将使用应用程序提供SCI. (市场)
fix 现在,可以统一处理从未打包到WEB-INF/classes JAR中的SCI定义,并且无论Web应用程序是否定义JAR顺序,都可以始终找到它们. (市场)
fix 64023 :反序列化会话时,请跳过空值会话属性. (舒尔茨)
fix 当JMXProxyServlet无法找到MBean或操作时,请勿抛出NullPointerException. (舒尔茨)
update Refactor recycle facade system property into a new connector attribute named discardFacades. (remm)
fix 64089 :为XML外部实体定义添加${...}属性替换支持. (市场)
code 废弃MappingData.contextPath因为它未被使用. (市场)
Coyote
add 报告/记录无效的HTTP标头时,会使用0xNN格式对所有非打印字符进行编码. (市场)
fix 更正7.0.98中引入的回归,该回归意味着Transfer-Encoding忽略Transfer-Encoding标头中的无效令牌,而不是将其视为错误. (市场)
fix 将HTTP连接器属性rejectIllegalHeaderName重命名为rejectIllegalHeader并扩展基础实现以包括标头值和名称. (市场)
update 默认情况下禁用(在server.xml中注释掉)AJP / 1.3连接器. (市场)
update 将AJP / 1.3连接器的默认绑定地址更改为回送地址. (市场)
add 将AJP / 1.3连接器的requiredSecret属性重命名为secret并添加一个默认为true的新属性secretRequired . 当secretRequiredtrue ,除非将secret属性配置为非空,非零长度的String,AJP / 1.3连接器将不会启动. (市场)
add 将新的属性allowedRequestAttributesPattern添加到AJP / 1.3连接器. 属性无法识别的请求将被403阻止.(标记)
Jasper
fix 64097 :用ServiceLoader替换用于ExpressionFactory实现的错误的自定义服务查找. (市场)
addMETA-INF/services条目添加到jasper-el.jar,以便可以通过services API发现Expression Language的实现. (市场)
code 在本地化消息中参数化JSP版本和API类名称,以允许在主要版本之间更简单地重用. (市场)
Cluster
fix 64043 :确保在表单身份验证期间复制会话ID更改. (kfujino)
Web applications
fix 64000 :在示例Web应用程序(其中Servlet示例包括i18n支持)的情况下,所使用的语言环境应基于请求语言环境,而不是服务器语言环境. (市场)
Tribes
add 将EncryptInterceptor添加到可用的群集拦截器的产品组合中. 这将会话数据的对称加密添加到Tomcat群集中,而不管所使用的群集管理器类型或成员身份如何. (舒尔茨/马克特)
Other
add 扩展Apache Tomcat随附的法语翻译的范围. (雷姆)
add 扩展Apache Tomcat随附的中文翻译的范围. 由BoltzmannWxd提供. (市场)
Tomcat 7.0.99 (violetagg)发行日期2019-12-17
Catalina
add 63681 :介绍RealmBase#authenticate(GSSName,GSSCredential)和朋友. (米高)
add 63937 :向标准的Authenticator实现中添加一个新属性allowCorsPreflight ,该属性允许将Authenticator配置为允许CORS预检请求绕过CORS规范要求的身份验证. (市场)
fix 63939 :更正CORS过滤器中的相同原点检查. 现在认为具有显式默认端口的源与没有默认端口的源相同,并且现在按照CORS规范要求以区分大小写的方式比较源. (市场)
fix 63950 :修复了导致TestAsyncContextStateChanges测试无限期挂起的计时问题. (市场)
fix 63982 :CombinedRealm对主体实现进行了假设(michaelo)
code 为会话FileStore实现添加一个单元测试,并在FileStore重构循环以使用ForEach样式. Govinda Sakhare提供的拉取请求. (市场)
fix 重构FORM身份验证,以减少重复的代码,并确保在禁用缓存时,不会在会话中缓存经过身份验证的主体. 这是CVE-2019-17563的修复程序. (市场/ kkolinko)
update 如果不需要,请不要在身份验证期间将用户名和密码存储为会话注释. (kkolinko)
Coyote
fix 63932 :默认情况下,请勿压缩具有较强ETag的内容. 此行为是通过新的Connector属性noCompressionStrongETag为HTTP / 1.1连接器配置的. (市场)
WebSocket
fix 确保在编写WebSocket消息时避免非常不可能的并发问题. (市场)
Web applications
add 在JSP FORM身份验证示例中添加设置和显示会话属性的功能,以演示经过身份验证的会话在重新启动之间的会话持久性. (市场)
Other
fix 请更正针对63815的修复程序(在shell脚本中使用CATALINA_OPTSJAVA_OPTS时应避免使用*扩展),因为它引起了各种回归,尤其是daemon.sh . (市场)
add 扩展Windows安装程序对适合的Java安装的搜索,以包括64位JDK注册表项和JAVA_HOME环境变量. Alexander Norz提供的拉取请求. (市场)
add 扩展Apache Tomcat随附的德语翻译的范围. Jens提供的贡献. (市场)
add 扩展Apache Tomcat随附的法语翻译的范围. (雷姆)
add 扩展Apache Tomcat随附的日语翻译的范围. (市场)
add 扩展Apache Tomcat随附的韩语翻译的范围. (元山)
add 扩展Apache Tomcat随附的中文翻译的范围. 由lins和磊提供. (市场)
add 将Apache Commons BCEL的内部fork更新为ff6941e(2019-12-06,6.4.2-dev). 仅代码清理. (市场)
add 将Apache Commons Codec的内部fork更新为9637dd4(2019-12-06,1.14-SNAPSHOT). 代码清理和CODEC-265的修复程序. (市场)
add 将Apache Commons FileUpload的内部fork更新为2317552(2019-12-06,2.0-SNAPSHOT). 重构. (市场)
Tomcat 7.0.98 (violetagg)未发布
Catalina
fix 63832: Properly mark container as FAILED when a JVM error occurs on stop. (remm)
fix 如果在处理过程中由于OutOfMemoryException请求失败,请尽最大努力清除. (市场)
update 63905清理Tomcat CSS. (米高)
fix 重构JMX远程RMI注册表创建. 这是CVE-2019-12418的修复程序. (雷姆)
Coyote
fix 63814 :请勿在NIO中将服务器套接字超时设置为负值. (雷姆)
fix 一旦在AsyncListener.onTimeout()AsyncListener.onError()期间调用了AsyncContext.complete()AsyncContext.dispatch()确保ServletRequest.isAsyncStarted()返回false . (市场)
fix 6381663817 :在启动异步处理之后但在启动异步处理的容器线程完成处理当前请求/响应之前,可以正确处理I / O错误. (市场)
fix 63825 :在处理ExpectConnection HTTP标头以查找特定令牌时,请严格确保存在正确的令牌. (市场)
fix 63829: Improve the check of the Content-Encoding header when looking to see if Tomcat is serving pre-compressed content. Ensure that only a full token is matched and that the match is case insensitive. (markt)
fix 63836 :确保在NIO端点停止时释放为OOME降落伞保留的内存. (市场)
fix 63864: Refactor parsing of the transfer-encoding request header to use the shared parsing code and reduce duplication. (markt)
code 现在,不再支持需要使用多个较小轮询集的Windows操作系统,因此可以将APR轮询器重构为始终使用单个轮询集. (市场)
Jasper
fix 63897 :在编译JSP之前捕获JSP的时间戳以进行修改跟踪,以防止在编译过程中修改JSP时出现竞态条件. Karl von Randow提供的补丁. (市场)
fix 修复了可能导致最终用户看不到对修改的JSP所做更改的竞争条件. (市场)
WebSocket
fix 63913 :包装任何NullPointerException之遥由InflaterDeflater使用的PerMessageDeflate在扩展IOException ,这样的错误可以被捕获,并通过WebSocket的错误处理机制进行处理. (市场)
Web applications
fix 更正安全性方法中服务器属性默认值的描述. (市场)
fix 在文档Web应用程序中更正ConnectormaxConnections属性的文档. (市场)
Other
fix 63815 :在shell脚本中使用CATALINA_OPTSJAVA_OPTS时应避免使用*扩展. 请注意, CATALINA_OPTS和/或JAVA_OPTS存在的所有换行符将不再删除. (市场)
fix 63826 :从Windows的二进制zip发行版中删除commons-daemon-native.tar.gztomcat-native.tar.gz ,因为这些组件的编译版本已包含在zip发行版中. (市场)
fix 63833 :修复了复制的Commons DBCP 1.x代码的泛化中的错误,该错误会导致如果DataSource配置了不存在的数据库,则会导致NullPointerException . 李国雄提供的补丁. (市场)
fix 63838 :在命令行上运行单元测试时,禁止反射性访问警告. (市场)
fix 从HP-UX上的HPE JVM添加缺少的字符集,以通过org.apache.tomcat.util.buf.TestCharsetCache单元测试. (米高)
add 扩展Apache Tomcat随附的法语翻译的覆盖范围和质量. (雷姆)
add 扩展Apache Tomcat随附的韩语翻译的覆盖范围和质量. (元山)
add 扩展Apache Tomcat随附的简体中文翻译的内容和质量. rpo130,沉梅森,李亚州,winsonzhao,黄青石,莱,侯书成和周艳明提供的资料. (市场)
Tomcat 7.0.97 (violetagg)未发布
Catalina
add 57665 :将对X-Forwarded-Host标头的支持添加到RemoteIpFilterRemoteIpValve . (市场)
add 62496 :添加选项以将身份验证信息(远程用户/身份验证类型)写入响应头. (米高)
fix 63550 :仅在JNDIRealm指定了alternateURL JNDIRealm ,然后JNDIRealm尝试. (市场)
update 63627: Implement more fine-grained handling in RealmBase.authenticate(GSSContext, boolean). (michaelo)
fix 如果没有部署ROOT上下文并且请求未映射到任何其他部署的Context,请避免在CrawlerSessionManagerValve发生NullPointerException . Jop Zinkweg提供的补丁. (市场)
fix 63636 :从未在StandardWrapper.findSecurityReference()调用Context.findRoleMapping() StandardWrapper.findSecurityReference() . (米高)
fix 解决了当连接器停止时仍在进行阻塞的I / O操作时,使用APR /本机连接器在关机时崩溃的问题. (市场)
fix 63684 :对于给定的安全性约束, Wrapper从未传递给RealmBase.hasRole() . (米高)
fix 如果将服务直接嵌入到应用程序中(即没有服务器),并且启用了JNDI,请避免在服务停止时潜在的NullPointerException . S. Ali Tokmen提供的补丁. (市场)
add 添加一个新的PropertySource实现EnvironmentPropertySource ,该实现可用于使用环境变量在配置文件中进行属性替换. 根据Thomas Meyer提供的拉取请求. (市场)
fix 63758 :在二进制发行版中包含tomcat-users.xml文件的XML模式. (市场)
fix 63778 :在Java 7上运行时,请使用正确的签名来查找DatabaseMetaData.getPseudoColumns()方法,并避免使用错误的方法引起的NullPointerException . 添加错误日志记录以检测类似的错误. 根据liguoxiong的拉取请求. (市场)
Coyote
fix 63571 :对JSSE TLS会话缓存大小使用实现默认值. (市场)
fix 63578: Improve handling of invalid requests so that 400 responses are returned to the client rather than 500 responses. (markt)
code 删除sendfile轮询器中的代码,以确保较小的轮询集与较旧的,不再受支持的Windows版本(不支持较大的轮询集)一起使用. (市场)
fix 63737 :更正了在解析accept-encoding头以确定是否支持gzip编码(包括仅解析找到的第一个头)时的各种问题. (市场)
fix 63766 :确保处理HTTP升级连接时处理处理器对象被回收,该处理在切换到用于升级协议的处理器之前终止. (市场)
Jasper
fix 63781 :在执行与类的可见性相关的各种检查时,请在EL实现中将字段放在方法中,还请检查是否已导出包含模块. (市场)
Web Socket
fix 63753 :如果正在使用非默认端口,请确保Web套接字HTTP升级请求中的Host标头仅包含端口. (市场)
fix 在Java 9及更高版本上运行时,请勿尝试实例化未导出模块中的WebSocket端点. (市场)
Web applications
fix 更正ROOT Web应用程序索引页上的源代码链接,使其指向Git而不是Subversion. (市场)
fix 修复了为文档Web应用程序生成的Javadoc的各种问题,以启用从Java 10开始构建的发行版本. (市场)
fix 修复了大量的Javadoc和文档拼写错误. 康志东提供的补丁. (市场)
fix 群集的拼写和格式更正方法. Bill Mitchell提供的拉取请求. (市场)
docs 为通用注释API实现添加Javadoc. (市场)
jdbc-pool
fix 在没有显式验证查询的情况下验证连接时,请确保提交了验证过程打开的所有事务. Pascal Davoust提供的补丁. (市场)
Other
fix 55620 :部分修复. 当$CATALINA_HOME和/或$CATALINA_BASE在Windows上包含分号或在Linux / FreeBSD / etc等上包含冒号时,阻止Tomcat启动. (市场)
fix 62140catalina.[bat|sh]注释中的其他用法文档. (市场)
add 63285 :在service.bat添加一个选项,以便在安装Windows服务时,可以更改Windows服务使用的可执行文件的名称以匹配该服务名称. 这使安装行为与Windows安装程序一致. 删除Windows服务后,将还原原始的可执行文件名称. 可以通过在服务名称之后使用新的--rename选项来启用重命名. (市场)
update 63625 :更新到Commons守护程序1.2.1. 这将更正Commons Daemon 1.2.0中的多个回归,最明显的是Windows Service在使用32位JVM时启动时崩溃. (市场)
update 63634 :将build.xml中的setproxy目标与8.5 / 9.0对齐. (米高)
add 将默认的JPDA(远程调试接口)监听地址限制为localhost:8000 . (市场)
update 收紧.tar.gz分发的默认文件权限,以便默认情况下所有文件或目录都不是世界可读的. 将Tomcat配置为以默认umask 0027运行,可以通过在setenv.sh设置UMASK来覆盖它. (市场)
fix 允许自定义service.bat,例如堆内存大小,服务启动模式和JVM args. (伊萨皮尔)
update 将Commons Codec的内部fork更新为3ebef4a(2018-08-01),以获取针对CODEC-134的修复程序. (市场)
update 63648 :更新测试套件中使用的测试TLS密钥和证书,以替换即将过期的密钥和证书. (市场)
fix 向后移植对i18n消息的英文版的各种更正和改进. (市场)
fix 向后移植对西班牙i18n消息的各种更正和改进. (市场)
fix 向后移植对法语i18n消息的各种更正和改进. (市场)
fix 向后移植对日语i18n消息的各种更正和改进. (市场)
fix 向后移植对俄罗斯i18n消息的各种更正和改进. (市场)
add 在标准Tomcat发行版中包括可用的德语翻译. 向后添加和更新德语i18n消息. (市场)
add 将韩语翻译添加到标准Tomcat发行版中. (市场)
add 将简体中文翻译添加到标准Tomcat发行版中. (市场)
fix 修复catalina.bat JSSE_OPTS引用. 由Peter Uhnak提供. (fschumacher)
fix 删除未使用的i18n消息和相关的翻译. 康志东提供的补丁. (市场)
code 弃用org.apache.tomcat.util.compat.TLS . 它的功能仅用于org.apache.tomcat.util.net.TesterSupport单元测试,并已移至该位置. (荣)
fix 使用Windows Installer执行静默安装时,请确保在使用64位JVM时将注册表项添加到64位注册表中. (市场)
fix 63759 :使用Windows安装程序安装Tomcat时,请授予足够的特权,以使卸载程序能够在用户帐户控制处于活动状态时执行. (市场)
add 使用构建属性来定义最低支持的Java版本,并使用该构建属性来减少更新最低支持的Java版本所需的编辑次数. (市场)
update 63767 :更新到Commons守护程序1.2.2. 这将更正Commons守护程序1.2.0和1.2.1中的回归,该回归导致Windows Service在未完全更新的操作系统上运行时在启动时崩溃. (市场)
Tomcat 7.0.96 (violetagg)发行日期2019-07-29
Catalina
fix 63579 :正确解析格式不正确的OPTIONS请求,并以400响应拒绝它们,而不是触发导致500响应的内部错误. (市场)
Coyote
fix 正确解析包含128到255之间字节的无效主机名,并以400响应拒绝它们,而不是触发导致500响应的内部错误. (市场)
WebSocket
fix 更正一个阻止从Java 6开始默认安装Tomcat 7的回归.(标记)
Other
add 使单元测试能够并行执行. (市场)
Tomcat 7.0.95 (violetagg)未发布
Catalina
add 43548 :为tomcat-users.xml文件添加XML模式. (市场)
fix 63324 :重构CrawlerSessionManagerValve以使放置在会话中的对象与带有mem-cached的会话序列化兼容. Martin Lemanski提供的补丁. (市场)
fix 63531 :重构身份验证器,以便如果将缓存属性设置为false且未使用FORM身份验证,则不会更新会话的上次访问时间. (市场)
add 63556 :将请求标记为在RemoteIpValve和RemoteIpFilter中转发(michaelo)
fix 修复了从WAR文件执行CGI脚本时潜在的资源泄漏. 由Coverity扫描识别. (市场)
fix 修复了由Coverity扫描确定的StringCache中潜在的并发问题. (市场)
fix 修复了APR连接器的主Sendfile线程中的潜在并发问题. 由Coverity扫描识别. (市场)
fix 修复DataSourceRealm某些异常路径上的潜在资源泄漏. 由Coverity扫描识别. (市场)
fix 修复了解析JSP文件时异常路径上潜在的资源泄漏. 由Coverity扫描识别. (市场)
fix 修复了当JNDI查找返回兼容类的对象时潜在的资源泄漏. 由Coverity扫描识别. (市场)
code 重构ManagerServlet以避免在为指定类型的资源过滤JNDI资源时加载类. (市场)
fix 如果在server.xml使用docBase而不是可选path定义了Contextserver.xml避免NullPointerException . (市场)
fix 如果定义了默认的servlet,请确保默认的servlet读取了整个全局XSLT文件. 由Coverity Scan识别. (市场)
fix 生成HTTP Allow标头时,避免潜在的NullPointerException . 由Coverity Scan识别. (市场)
add Remove any fragment included in the target path used to obtain a RequestDispatcher. The requested target path is logged as a warning since this is an application error. (markt)
update 修改Default和WebDAV Servlet,以便在通过readonly初始化参数禁用时,针对PUTDELETE请求返回405状态代码.
fixAllow标头的内容与Default和WebDAV Servlet的响应代码对齐. 对于任何给定资源,返回405状态代码的方法将不会在Allow标头中列出,而Allow标题中列出的方法将不会返回405状态代码. (市场)
fix 在集合上复制/移动文件时,请纠正Litmus测试套件中针对WebDAV的两个失败测试. (市场)
update 将建议的最低Tomcat本机最低版本更新为1.2.23. (市场)
fix 如果通过AsyncContext.start(Runnable)启动的异步线程发生未处理的异常,请使用标准错误页面机制对其进行处理. (市场)
Coyote
code 重构主机名验证以提高性能. Uwe Hees提供的补丁. (市场)
fix 修复了在APR中使用多个轮询器时避免单个轮询器较长轮询时间的可能性. (市场)
fix 重构针对63205的修复程序,使其仅在使用PKCS12密钥库时才适用,因为已经报告了一些其他密钥库类型的回归. (市场)
Jasper
add 如果SMAP处理器在SMAP生成期间无法删除或重命名类文件,则在错误消息中包括文件名. (市场)
fix Java UEL实现中对varargs处理的改进. (市场)
Cluster
fix 62841 :重构DeltaRequest序列化以减少DeltaSession锁定的窗口,并消除序列化过程中可能引起死锁的原因. (市场)
fix 63441 :进一步简化了DeltaManager中会话创建消息的处理,以减少在创建会话之前处理会话更新消息的可能性. (市场)
WebSocket
fix 63521 :根据WebSocket规范的要求,如果随后通过编程API部署了由于注释注释的POJO的SCI扫描而部署的POJO,则忽略该编程部署. (市场)
Tribes
fix 检查组成员的运行状况时,将NoRouteToHostExceptionSocketTimeoutException相同. 当与组成员关联的主机未打开电源时,这将避免在每次执行检查时发出SEVERE日志消息. (市场)
Other
fix 55969 :加强Windows安装程序创建的Apache Tomcat安装的安全性. 将Windows安装程序使用的默认关机端口从8005更改为-1 (禁用). 将对所选安装目录的访问限制为本地管理员,本地系统和本地服务. (市场)
add 59871 :在JULI的OneLineFormatter添加属性( timeFormat ),以配置日志消息中使用的时间戳的格式. (市场)
update 63310 :更新到Commons守护程序1.2.0. 这提供了对Java 11的改进支持.这还将Windows安装程序为Windows服务配置的用户从" Local System更改为特权较低的" Local Service . (市场)
fix 63335 :确保由OneLineFormatter编写的堆栈跟踪完全缩进. 现在,整个堆栈跟踪由一个附加的TAB字符缩进. (市场)
fix 使用OneLineFormatter ,不要在打印堆栈跟踪后在日志中打印空白行. (市场)
fix 使用test命令而不是tty命令来检查终端的可用性,因为基于tty的测试在非英语语言环境中失败. RadosławJózwik提供的补丁. (市场)
update 将JUnit更新到版本4.12. (市场)
update 将可选的WSDL依赖关系更新为1.6.3. (市场)
update 将Checkstyle更新到版本8.22. (市场)
Tomcat 7.0.94 (markt)发行日2019-04-12
Catalina
fix 63196 :为RemoteIpFilterRemoteIpValveprotocolHeader属性提供默认值( X-Forwarded-Proto ). (市场)
add 63206: Add a new attribute to Context - createUploadTargets which, if true enables Tomcat to create the temporary upload location used by a Servlet if the location specified by the Servlet does not already exist. The default value is false. (markt)
fix 63213 :当JNDIRealm配置为roleNested设置为true时,请在搜索嵌套组时确保对组名进行正确的转义. (市场)
fix 63235 :重构Charset缓存以减少启动时间. (市场)
fix 63236 :使用Phillip Webb建议的String.intern()来减少由于字符串重复而造成的内存浪费. 开始全新安装时,此更改可节省〜245k. 另外还要感谢YourKit Java profiler来帮助查找浪费的内存和根本原因. (市场)
fix 63246 :修复了在调用AsyncContext.dispatch()时潜在的NullPointerException . (市场)
fix 63249 :在记录注册或注销JMX Bean的失败时,请使用一致的日志级别( WARN ). (市场)
fix 63249 :在记录与启动或停止组件失败相关的LifecycleException时,请使用一致的日志级别( ERROR ). (市场)
fix 当SSI指令fsize与无效目标一起使用时,返回文件大小-而不是1k . (市场)
fix 63251 :为已知的JRE错误( JDK-8194653 )实现一种变通方法,该错误可能在Tomcat启动时导致死锁. (市场)
fix 确保在Java 9或更高版本上运行时,JarScanner正确测试是否应跳过在类路径上找到的JAR. (市场)
fix 63275 :使用RequestDispatcher确保HttpServletRequest.getContextPath()返回已调度请求中的编码路径. (市场)
fix 63286 :记录%D%T httpd中的LogFormat指令与AccessLogValvepattern属性之间的行为差​​异. (市场)
fix 63311 :将Tomcat配置为验证XML配置文件(例如web.xml)时,将对https URL的支持添加到Tomcat中的本地解析器,该解析器用于解析标准XML DTD和模式. (市场)
fix 对SSI printenv命令的输出进行编码. 这是CVE-2019-0221的修复程序. (市场)
code 将常量用于SSI编码值. (市场)
add 在将enableCmdLineArguments设置为true的情况下配置CGI Servlet时,请将单个命令行参数的编码形式限制为RFC 3875允许的值.可以通过使用新的初始化参数cmdLineArgumentsEncoded来放宽此限制. (市场)
add 当将CGI Servlet配置为enableCmdLineArguments设置为true时,在Windows上运行时,将各个命令行参数的解码形式限制为已知的安全值. 通过使用新的初始化参数cmdLineArgumentsDecoded可以放宽此限制. 这是CVE-2019-0232的修复程序. (市场)
update 将CGI Servlet的enableCmdLineArguments参数的默认值从true更改为false以针对CVE-2019-0232进行其他强化. (市场)
Coyote
fix 63194 :修复了失败的单元测试,因此在使用Java 11及更高版本和APR / Native连接器时,TLS1.3客户端身份验证测试可以正常工作. (市场)
add 63205 :为已知的JRE KeyStore加载错误添加解决方法. (市场)
Jasper
add 添加对将Java 11(值为11 )指定为JSP编译器的编译器源和/或编译器目标的支持. (市场)
add 添加对将Java 12(值为12 )和Java 13(值为13 )指定为JSP编译的编译器源和/或编译器目标的支持. 如果与不支持这些值的ECJ版本一起使用,则会记录警告并使用最新的受支持版本. 基于Thomas Collignon的补丁. (市场)
Web applications
fix 63184 :扩展SSI文档以提供有关受支持的指令及其属性的更多信息. 守夜人提供的补丁. (市场)
jdbc-pool
fix 63320 :确保StatementCache缓存在参数中包含数组的语句. (kfujino)
Other
code 将Apache Commons DBCP 1.4和Apache Commons Pool 1.5.7源代码复制到Tomcat 7.0.x树中,以启用其他修复程序.
fix 截至2019-03-15,将Apache Commons DBCP 1.4.x和Apache Commons pool 1.5.x的副本更新为最新的源代码,以获取包括58338在内的多个错误修复程序. (市场)
code 将Apache Commons Pool的副本更新为1.6.x,以获取泛型更改. (市场)
add 将JDBC 4.1支持添加到Tomcat提供的默认数据库连接池中. (市场)
update 从Checkstyle切换到JRE6反向端口,并更新到版本8.17. 这使Tomcat 7仍可使用Java 6进行构建时使用更新的配置格式(使用最新Checkstyle快照的Gump要求).
Tomcat 7.0.93 (violetagg)发行日2019-02-21
Catalina
fix 54741 :添加新方法Tomcat.addWebapp(String,URL) ,当在嵌入式模式下使用Tomcat时,该方法允许从URL部署Web应用程序. (市场)
add 62897 :在标准Context实现上提供一个属性( clearReferencesThreadLocals ),该属性可以禁用通过ThreadLocal进行的内存泄漏检查,因为此检查取决于使用Java的更高版本中已弃用的API. (市场)
fix 62978: Update the RemoteIpValve to handle multiple values in the x-forwarded-proto header. Patch provided by Tom Groot. (markt)
fix 更新RemoteIpFilter以处理x-forwarded-proto forward x-forwarded-proto标头中的多个值. 基于Tom Groot提供的补丁. (市场)
code 62986 :重构在Web应用程序启动期间执行类扫描的代码,以使下游用户的集成更简单. 基于rmannibucau提供的补丁. (市场)
fix 实现Servlet规范的第8.2.2 2c节的要求,并阻止Web应用程序部署(如果它具有名称重复的片段并且配置为使用片段的相对顺序). (市场)
update 将建议的最低Tomcat本机最低版本更新为1.2.19. (市场)
fix 确保ServletOutputStream实现与异步I / O的要求一致,并且所有写方法都使用单个写而不是多个写. (市场)
fix 更正Context.getDocBase()Context.setDocBase()的Javadoc,并删除指示URL可以用于docBase文本,因为这种情况已经有一段时间了. (市场)
add 作为服务运行时,请确保Tomcat已完全终止. (市场)
fix 63003 :扩展unloadDelay在属性Context ,包括飞行异步请求. (市场)
add 63026 :向JNDIRealm添加新属性forceDnHexEscape ,以强制转义专有名称的String表示形式以使用\nn形式. 这样可以避免使用Active Directory的领域出现问题,当使用\nn格式时,该领域似乎更能接受可选的转义. (市场)
update 将建议的最低Tomcat本机最低版本更新为1.2.21. (市场)
update 简化tomcat-i18n jar文件的catalina.properties文件中的jarsToSkip属性的值. 使用前缀模式而不是列出每种语言. (kkolinko)
WebSocket
fix 57974 :确保Session.getOpenSessions()实现为客户端和服务器端调用返回正确的值. (市场)
fix 63019 :写入时使用有效负载剩余字节而不是限制. 由Benoit Courtilly提交. (雷姆)
fixSecurityManager运行时,请确保默认javax.websocket.server.ServerEndpointConfig.Configurator实现的ServiceLoader查找正确完成,而不是使用硬编码的后备来静默地完成. (市场)
fix 如果客户端收到尝试与服务器通信的I / O错误,请确保关闭网络连接. (市场)
fix 扫描POJO方法时,请忽略合成方法. (市场)
fix Implement the requirements of section 5.2.1 of the WebSocket 1.1 specification and ensure that if the deployment of one Endpoint fails, no Endpoints are deployed for that web application. (markt)
fix 实施WebSocket 1.1规范的4.3节的要求,并确保如果@PathParam与无效的参数类型一起使用,则Endpoint的部署将失败. (市场)
fix 如果使用@OnMessage注释的方法不符合Javadoc中列出的要求,请确保引发DeploymentException异常而不是IllegalArgumentException异常. (市场)
fix 改进确定是否为同一消息类型添加了两个@OnMessage批注的算法. 在此更改之前,缺少一些比赛. (市场)
code 删除为解决四个失败的TCK测试而引入的STREAMS_DROP_EMPTY_MESSAGES系统属性. 已实施了替代解决方案. 现在,仅当将数据写入OutputStreamWriter通过getSendStream()getSendWriter()发送消息才会在网络上产生消息. 写入零长度数据将导致出现空消息. 请注意,通过Encoder发送消息可能导致消息通过getSendStream()getSendWriter() . (市场)
Web applications
fix 63103 :从示例Web应用程序中删除未使用的source.jsp文件和关联的标记,因为它不再被使用. (市场)
fix 63143 :当默认系统区域设置的语言不是英语时,请确保Manager Web应用程序遵守浏览器中配置的用户的语言首选项. (市场)
fix 在Manager Web应用程序的"服务器状态"页面上使用客户端的首选语言. 查看并修复几种在Manager和Host Manager Web应用程序中未遵守客户端语言偏好的情况. (kkolinko)
fix 修复Manager和Host Manager Web应用程序使用的消息. 添加或删除主机时使用的消歧消息键. 改善状态页面上摘要值的显示:用空格分隔术语和值. 改进过期会话命令的消息措辞. (kkolinko)
fix 不要在Manager和Host Manager Web应用程序中添加CSRF nonce参数并禁止Referer标头用于外部链接. (kkolinko)
Other
fix 在Cygwin Shell中运行并且JAVA_ENDORSED_DIRS系统属性为空时,防止出现错误. Zemian Deng提供的补丁. (市场)
update 将Tomcat本机库的打包版本更新为1.2.19,以获取使用APR 1.6.5和OpenSSL 1.1.1a构建的最新Windows二进制文件. (市场)
fix 在logging.properties中将AsyncFileHandler纠正为FileHandler. (呼星)
update 将Tomcat本机库的打包版本更新为1.2.21,以在将NIO / NIO2与OpenSSL一起使用时获取内存泄漏修复程序. (市场)
fix 使用Java 11启用编译和测试执行.请注意,在这种情况下,不赞成使用的类org.apache.catalina.util.Base64将被排除在构建之外,因为它依赖于Java 11以后已删除的JRE类. (市场)
update 将用于构建Windows安装程序的NSIS安装程序更新为3.04版. (市场)
add 扩展Apache Tomcat随附的俄语翻译的覆盖范围和质量. (kkolinko)
Tomcat 7.0.92 (violetagg)发行于2018-11-15
Catalina
fix 添加有关context.xml.defaultweb.xml.default文件的文档,这些文档可用于基于每个主机自定义conf/context.xmlconf/web.xml . (fschumacher)
fix 确保规范路径始终用于上下文的docBase,以确保行为一致. (市场)
fix 62788 :添加了显式日志记录配置,以使用UTF-8写入日志文件,以默认情况下与Tomcat在其他地方对UTF-8的使用保持一致. (市场)
fix 62797 :可以通过传递,以使客户端中止状态为200而不是500.Zikfat提交了补丁. (雷姆)
fix 62809 :更正了对Deployer Ant任务的DIGEST身份验证支持的实现中的回归(错误45832 ),这在需要身份验证时阻止DeployTask起作用. (市场)
update 将建议的最低Tomcat本机最低版本更新为1.2.18. (市场)
add 忽略StandardContext提供的Context元素上名为source的属性. 这是为了抑制由Eclipse提供的Eclipse / Tomcat集成生成的警告. 基于mdfst13的补丁. (市场)
add 62830 :添加了JniLifeCycleListener和静态方法Library.loadLibrary(libraryName)Library.load(filename)以通过共享类加载器加载本机库,以便多个Webapp可以使用它. (伊萨皮尔)
fix 更正西班牙语资源文件中的错字. DiegoAgulló提供的补丁. (市场)
fix 62868 :根据委托标志的设置,对WebappClassLoaderBase.getResources(String)提供的Enumeration<URL>进行WebappClassLoaderBase.getResources(String) . (市场)
Coyote
add 在支持TLS版本1.3的JVM上运行时,将TLSv1.3添加到默认协议和基于JSSE的TLS连接器的all别名. 这样的JVM就是OpenJDK版本11.(rjung)
fix 62739 :请勿拒绝具有空HTTP Host标头的请求. 这样的请求是异常的,但不是无效的. 迈克尔·奥尔(Michael Orr)提供的补丁. (市场)
add 62748 :添加了对APR / Native连接器的TLS 1.3支持. (舒尔茨/马克特)
fix 62791 :删除了NIO TLS实施中的不必要检查,该检查阻止建立安全的WebSocket连接. (市场)
Jasper
fix 62674 :更正了独立的JSP编译器实用程序JspC的回归,该回归是由53492的修复引起的,该回归导致JSP编译器挂起. (市场)
fix 62721 :使用JspC时,正确生成了web.xml标头. (市场)
fix 修复TLD空格解析修复程序中的回归,该回归会在方法名称和参数之间存在空格时中断解析. (市场)
fix 62757 :更正了针对62603的修复程序中的回归,该回归在禁用开发模式和启用后台编译的情况下在首次访问时编译标记文件时导致NullPointerException . 基于Jordi Llach的补丁. (市场)
fix 62808 :修复了方法签名中出现新行时TLD空格解析修复中的回归问题,该回归使分析工作中断. (市场)
WebSocket
fix 62731 :将HandshakeRequest.getRequestURI()Session.getRequestURI()返回的URI设置为绝对,以便可访问方案,主机和端口. (市场)
Web applications
fix 62761 :更正过滤器文档中的高级CORS示例,以使用有效的配置. (市场)
fix 62786 :在Context文档中添加一条注释,以说明默认情况下,在server.xml中定义的Context元素的设置将被默认上下文文件(例如conf/context.xml指定的设置覆盖. (市场)
fix 在Manager应用程序中的Undeploy按钮和其他按钮之间创建一些视觉上的分隔. ŁukaszJąder提供的补丁. (市场)
Other
update 将Tomcat本机库的打包版本更新为1.2.18,以获取使用APR 1.6.5和OpenSSL 1.1.1构建的最新Windows二进制文件. (市场)
Tomcat 7.0.91 (violetagg)发行于2018-09-19
Catalina
add 61692 :添加了通过新的初始化参数cgiMethods控制CGI Servlet处理哪些HTTP方法的cgiMethods . (市场)
fix 使用CORS筛选器时,请确保正确设置了HTTP Vary标头,并提高了通过COPRS筛选器的请求的可缓存性. (市场)
fix 62527 :将JNDI的限制恢复为java:命名空间. (雷姆)
add 引入一个新类MultiThrowable在执行多个操作时报告异常,其中每个操作都可能引发异常,但是在报告任何错误之前都执行了所有操作. 在启动过程中报告多个容器(例如Web应用程序)失败时,请使用此新类. (市场)
fixRequestDispatcher和Web应用程序类加载器中正确解码URL路径(不应将+解码为路径中的空格). (市场)
add 62559 :将jaxb-*.jar添加到StandardJarScanner忽略的JAR列表中. (市场)
add 62560 :将oraclepki.jar添加到StandardJarScanner忽略的JAR列表中. (市场)
add 62607 :从catalina.[bat|sh] run返回非零退出代码catalina.[bat|sh] run如果Tomcat无法启动,则catalina.[bat|sh] run . (市场)
codeTomcat.addWebapp(String,String)声明中删除ServletException Tomcat.addWebapp(String,String)因为它永远不会抛出. Tzafrir提供的补丁. (市场)
fix 使用短路逻辑来防止CorsFilter中潜在的NPE. (fschumacher)
code 从JAASRealm中的容器名称简化appName的构造. (fschumacher)
fix 使用RequestDispatcher对象时,改进对路径参数的处理. (市场)
fix 62664 :将内容类型为multipart/form-data请求multipart/form-data为带有@MultipartConfig批注的servlet,而与HTTP方法无关. (市场)
fix 62669 :使用SSIFilter且资源未指定内容类型时,请勿将内容类型强制设置为application/x-octet-stream . (市场)
fix 在默认Servlet中生成到目录的重定向时,请避免生成协议相对重定向. (市场)
Coyote
fix 重构代码,该代码将额外的标头名称添加到Vary HTTP响应标头中,以使用可解决几种其他极端情况的通用实用程序方法. (市场)
fix 62526 :当密钥库密码配置为空字符串时,可以正确处理PKCS12格式的密钥库. 请注意,Java 6不支持配置为使用空字符串的存储密码的PKCS12密钥存储. (市场)
fix 62670 :调整DriverManager的内存泄漏保护,以便启用保护后,通过服务加载程序机制加载$CATALINA_HOME/lib$CATALINA_BASE/lib中的JDBC驱动程序. (市场)
fix 62685 :更正主机名验证解析中的错误,该错误不允许完全限定的域名以句点终止. AG提供的补丁. (市场)
Jasper
fix 53011 :使用JspC进行预编译时,报告所有编译错误,而不是在第一个错误之后停止. 可以使用新选项-failFast恢复在第一个错误之后停止的先前行为. 基于Marc Pompl提供的补丁. (市场)
add 53492 :使Java文件生成过程成为多线程. 默认情况下,每个内核将使用一个线程. 基于Dan Fabulich的补丁. (市场)
fix 62603: Fix a potential race condition when development mode is disabled and background compilation checks are enabled. It was possible that some updates would not take effect and/or ClassNotFoundExceptions would occur. (markt)
fix 更正启用xpoweredBy选项时生成的X-PoweredBy HTTP标头中的JSP版本. (市场)
fix 62662 :修复了由于53492导致的JSP编译期间web.xml输出的损坏. Bernhard Frauendienst提供的补丁. (市场)
fix 正确解析TLD函数签名中的XML空格,该签名错误地仅寻找空格字符. (市场)
WebSocket
fix 62596 :取消了用于建立Web套接字连接的初始HTTP升级请求的大小限制. (市场)
Web applications
add 62558 :为Manager和Host Manager Web应用程序添加俄语翻译. 基于Ivan Krasnov的补丁. (市场)
add 62561 :将有关服务器和共享类加载器使用的高级类加载器配置信息添加到文档Web应用程序. (市场)
add 在文档Web应用程序中展开有关CATALINA_HOMECATALINA_BASE的使用的信息. Marek Czernek提供的补丁. (市场)
fix 62652 :更清楚地说明,Tomcat 7.0.x中打包的DBCP版本是DBCP1 .(标记)
add 62666 :扩展Manager应用程序中的国际化支持,以包括服务器状态页面,并提供除英语之外的俄语翻译. Artem Chebykin提供的补丁. (市场)
fix 62676 :扩展CORS筛选器文档以明确要求进行显式配置才能支持跨域请求. (市场)
Tribes
fix 确保将指定的rxBufSize正确设置为接收器缓冲区大小. (kfujino)
Other
fix 固定的拼写. Jimmy Casey通过GitHub提供的补丁. (紫罗兰色)
fix 在源代码和文档中更正各种拼写错误. Kazuhiro Sera提供的补丁. (市场)
Tomcat 7.0.90 (violetagg)发行于2018-07-06
Catalina
fix 62498 :更正了CVE-2017-12617修复程序中的回归,该回归导致使用VirtualDirContext时某些请求的请求失败. (市场)
fix 删除对已删除类的引用,该引用会阻止Tomcat在安全管理器下运行时启动. (市场)
Tomcat 7.0.89 (violetagg)not released
Catalina
fix 现在将使用注入目标定义但没有值的JNDI资源视为未定义资源. (市场)
fix 确保用于web.xml中的<lookup-name>条目和@Resource批注的lookup元素的JNDI名称指定具有显式java:命名空间的名称. (市场)
add 51953 :添加RemoteCIDRFilterRemoteCIDRValve ,可用于允许/拒绝基于IPv4和/或IPv6客户端地址的请求,其中IP范围是使用CIDR表示法定义的. 基于Francis Galiegue的补丁. (市场)
fix 62343 :使CORS过滤器默认设置更安全. 这是CVE-2018-8014的修复程序. (市场)
fix 使与Tomcat关联的所有记录器提供的"过滤器"均为非静态,以确保在重新加载Web应用程序时不会丢失日志消息. (市场)
fix Correct the manifest for the annotations-api.jar. The JAR implements the Common Annotations API 1.1 and the manifest should reflect that. (markt)
fix 切换到非静态记录器,其中记录器可能与Web应用程序类加载器相关联,如果Web应用程序停止,则会丢失日志消息. (市场)
add 62389 :将IPv6环回地址添加到默认的internalProxies正则表达式中. 克雷格·安德鲁斯的补丁. (市场)
fixRemoteIpValveRemoteIpFilter ,正确处理请求通过一个或多个trustedProxies但不传递internalProxies . 基于zhanhb的补丁. (市场)
fix 更正MBeanFactory.removeConnector()的逻辑,以确保当有多个使用不同地址但使用同一端口的连接器时,删除了正确的连接器. (市场)
fix 通过要求经过身份验证的Subject至少包含一个userClassNames指定类型的Principal,使JAASRealm错误配置更加明显. (市场)
fix 62476 :按照HTTP规范(RFC 7231,7234)的要求,将GMT时区用作Expires标头的值. (kkolinko)
Coyote
fix Log an error message if the AJP connector detects that the reverse proxy is sending AJP messages that are too large for the configured packetSize. (markt)
fix 62371 :改进了对主机验证失败的记录. (市场)
fix 用户名包含转义字符时,请正确处理摘要授权标头. (市场)
fix 当十六进制字段值之一以无效字符结尾标头时,正确处理摘要授权标头. (市场)
Jasper
fix 更新由JspC生成的web.xml,web-fragment.xml和web.xml提取,以使用相关模式的Servlet 3.0版本. (市场)
fix 通过确保IPv4映射的IPv6地址在IPv4部分中不包含前导零来改进IPv6验证. 基于Katya Stoycheva的补丁. (市场)
fix 62080 :确保通过PrivilegedAction执行UEL API和实现对当前线程的上下文类加载器的所有读取,以确保在SecurityException下运行时不会触发SecurityManager . (标记)
WebSocket
fix 当路径参数的解码失败时,请确保抛出DecodeException而不是ArrayIndexOutOfBoundsException . (kfujino)
fix 将TLS与WebSocket客户端一起使用时,请启用主机名验证. (市场)
Web applications
62395 :在文档说明Web应用程序中阐明连接器属性minSpareThreads的含义. (市场)
jdbc-pool
fixlogValidationErrors设置为true时,连接验证错误记录为SEVERE而不是WARNING . (kfujino)
Other
fix 62391: Remove references to javaw.exe as this file is not required by Tomcat and the references prevent the use of the Server JRE. (markt)
update 将Tomcat本机库的打包版本更新为1.2.17,以获取使用APR 1.6.3和OpenSSL 1.0.2o构建的最新Windows二进制文件. (市场)
add 下载用于构建Tomcat的依赖项时,实施校验和检查. (kkolinko)
Tomcat 7.0.88 (violetagg)发行于2018-05-11
Catalina
fix 以与等效的@Resource批注的mappedName元素相同的方式对待web.xml中的<env-entry><mapped-name>元素. 两者现在都尝试设置资源的mappedName属性. (市场)
fix 使用web.xml中定义的<injection-target>纠正资源处理. 首先使用JavaBean属性名称查找匹配项,然后(只有在未找到匹配项的情况下)使用字段查找匹配项. (市场)
fix 在FORM身份验证之后使用请求正文还原保存的请求时,请确保对HttpServletRequest方法getRequestURI()getQueryString()getProtocol()调用不会因保存的请求正文的处理而损坏. (市场)
fix 修复了在SecurityManager下运行时启动失败的问题,这是对bug 62273的修复的回归. (kkolinko)
fix 62353: Correct a regression introduced in Tomcat 7.0.86. Restore the ability for Tomcat 7 to run on Java 6 where Common Annotations 1.0 is available. Document the requirement to use the Java endorsed mechanism to use Common Annotations 1.1. (markt)
code 重构org.apache.naming包以减少重复的代码. Simian工具标识的重复代码. (市场)
fix 50019 :添加对<lookup-name> . 基于Gurkan Erdogdu的补丁. (市场)
fix 60490 :各种格式和布局的改进为ErrorReportValve . 迈克尔·奥西波夫(Michael Osipov)提供的补丁. (市场)
fix 通过取消FQDN的最后部分必须为字母的要求来放宽主机验证. (市场)
Jasper
add 50234 :向JspC添加了生成web-fragment.xml文件的功能. (市场)
fix 62350 :重构org.apache.jasper.runtime.BodyContentImpl以便在SecurityException下运行时不会引发SecurityException,并且catalina.policy文件中不需要其他权限. 这是对43925的修复. (kkolinko /市场)
Cluster
fix 创建复制的会话时,请删除重复的呼叫,以减少创建会话所花费的时间,从而减少由于该会话尚不存在而忽略后续会话更新消息的机会. (市场)
Tribes
fixMcastService检索未设置的属性时,请确保返回正确的默认值. (kfujino)
Other
fix 添加一个.gitattributes文件,以确保Git以二进制形式处理bug 52121的测试数据文件. (kkolinko)
Tomcat 7.0.87 (violetagg)未发布
Catalina
fix 62316 :更正了某些重构的回归,该回归打破了JDBC数据源的默认工厂. (市场)
fix 修复了在实际使用中不太可能发生的极少数情况. 这种边缘情况意味着,将几乎全部由代理对组成的较长的UTF-8字符流写入HTTP响应可能会导致一个代理对被丢弃. (市场)
fix 当DataSource Resource type="javax.sql.XADataSource"时注册MBean. 三浦正史提供的补丁. (csutherl)
add 将Apache Commons BCEL的内部fork更新为r1829827,以将早期访问Java 11支持添加到注释扫描代码中. (市场)
fix 62297 :在主机或引擎上配置Valve时,使CrawlerSessionManagerValve能够正确处理对多个主机和/或Web应用程序进行爬网的机器人. (fschumacher)
addHttpServletRequest#getContextPath()的返回值中的多个前导/字符折叠为单个/ ,以避免与HttpServletResponse#sendRedirect() . 默认情况下,此行为是启用的,并且可以通过新的Context属性allowMultipleLeadingForwardSlashInPath配置. (市场)
fix 使用补充字符改善UTF-8解码器中的溢出处理. (市场)
Coyote
add 对所有连接器启用提供的主机名和端口的严格验证. 主机名和/或端口无效的请求将被拒绝,并带有400响应. (市场)
fix 实施RFC 7230(和RFC 2616)的要求,即HTTP / 1.1请求必须包含Host标头,并且必须以400响应拒绝任何不被拒绝的请求. (市场)
fix 实施RFC 7230的要求,即在请求行中指定主机的任何HTTP / 1.1请求,都必须在Host标头中指定相同的主机,并且必须以400响应拒绝任何未请求的此类请求. 此检查是可选的,默认情况下处于禁用状态. 可以使用连接器的allowHostHeaderMismatch属性启用它. (市场)
fix 实施RFC 7230的要求,即任何包含多个Host标头的HTTP / 1.1请求都将被拒绝,并带有400响应. (市场)
add 62273 :实施配置选项以解决规范不兼容的用户代理(包括所有主要浏览器)的问题,这些代理不能正确地对RFC 7230和RFC 3986要求的URI路径和查询字符串进行%nn编码.(标记)
Jasper
fix 启用ECJ 4.7及更高版本以替代Apache Tomcat随附的ECJ版本. (市场)
fix 如果使用较新的ECJ版本,则可以将Java 10指定为JSP源和/或目标. (市场)
fix 62287 :请勿依赖哈希码来测试ValueExpressionImpl实例的相等性. Mark Struberg提供的补丁. (市场)
WebSocket
fix 62301 :更正了针对61491的修复程序中的回归,该回归在使用PerMessageDeflate时在所有情况下均未正确处理最终的空消息部分. (市场)
Other
fix 当未设置JAVA_ENDORSED_DIRS环境变量时,避免在Cygwin下运行时发出警告. Zemian Deng提供的补丁. (市场)
Tomcat 7.0.86 (violetagg)发行于2018-04-13
Catalina
fix 51195 :通过在Web应用程序停止时清除由Web应用程序加载的类的ObjectStreamClass$Caches ,避免对Web应用程序内存泄漏的误报. (市场)
fix 52688 :将对maxDays属性的支持添加到AccessLogValveExtendedAccessLogValve . 这允许在定义删除之前保留轮换访问日志的最大天数. (市场)
fix 防止Tomcat将gzip压缩应用于已经使用brotli压缩进行压缩的内容. 基于burka提供的补丁. (市场)
fix 62090: Null container names are not allowed. (remm)
fix 62104 :修复了编程登录回归,因为必须设置NonLoginAuthenticator才能使其正常工作(如果未指定登录方法). (雷姆)
fix 62117 :当调用kill -0 <pid>失败时,改进了catalina.sh错误消息. 根据Mark Morschhaeuser的建议. (市场)
fix 62118 :使用指定的接口而不是具体类型正确创建JNDI ServiceRef . 根据ÁngelÁlvarezPáscua的建议. (市场)
fix 修复RequestDumperFilter日志属性. Kirill Romanov通过Github提供的补丁. (紫罗兰色)
fix 62123 :在尝试清理应用程序触发的Web应用程序停止时触发的RMI内存泄漏时,请避免ConcurrentModificationException . (市场)
fix 62168 :使用PersistentManagerminIdleSwap的值应为-1 ,并且不要交换会话以将活动会话数保持在maxActive . Holger Sunke提供的补丁. (市场)
fix 62172 :改进org.apache.catalina.startup.Constants Javadoc并确保正确使用了常量. (市场)
fix 62175 :在使用PersistentManager加载会话时尝试验证会话时,请避免无限递归. (fschumacher)
fix 确保仅在关联的命名资源上的属性更改后才通知NamingContextListener实例. (市场)
add 62224 :在Java 9及更高版本上运行时,请禁用forkJoinCommonPoolProtectionJreMemoryLeakPreventionListener ,因为已修复了底层JRE错误. (市场)
fix 62263: Avoid a NullPointerException when the RemoteIpValve processes a request for which no Context can be found. (markt)
Coyote
fix 纠正线程池中的"一对一"错误,该错误使线程池的大小增加到比配置的限制大一倍. usc提供的补丁. (市场)
Web applications
add 解决某些版本的IE中已知的,不符合规范的行为,当Manager应用程序生成纯文本响应时,该行为可能允许XSS. 根据Muthukumar Marikani的建议. (市场)
addFragmentationInterceptor添加文档. (kfujino)
add 记录使用CombinedRealm时如何确定已认证用户的角色. (市场)
jdbc-pool
fix 当连接返回池时,请确保已清除SQLWarning . (kfujino)
fix 缓存PreparedStatement和/或CallableStatement时,请确保已清除参数. (kfujino)
fix 即使未设置validationQuery也可以启动PoolCleaner. (kfujino)
Other
update 更新构建脚本,以便不再根据ASF分发策略中的更改为发行版生成MD5哈希. (市场)
fix 62164 :将构建脚本切换为使用TLS从SourceForge和Maven Central下载,以避免由于HTTP到HTTPS重定向而导致失败. (市场)
Tomcat 7.0.85 (violetagg)发行于2018-02-13
Catalina
fix 防止由于LogManager实现的更改而在Java 10上运行时将堆栈跟踪写入标准输出. (市场)
fix 如果已经进行过一次加载尝试,则避免重复尝试. (雷姆)
fix 如果没有引擎,请避免在ThreadLocalLeakPreventionListener中使用NPE. (雷姆)
fix 58143 :修复了针对59619的问题,在7.0.70中破坏了调用类加载变压器. 使用弹簧编织时观察到了这一点. (荣)
fix 62000 :当无法解析JNDI引用时,请确保报告根本原因异常而不是将其吞下. (市场)
fix 62036 :当使用NonLoginAuthenticator配置Web应用程序时在会话中缓存经过身份验证的用户Principal时,请缓存内部Principal对象,而不是面对Principal对象的用户,因为Tomcat要求内部对象正确处理以后的授权检查. (市场)
fix 62067 :使用URL模式""正确应用映射到上下文根的安全约束. (市场)
fix 使用嵌入式Tomcat时,在Web应用程序启动期间仅执行一次Authenticator配置. (市场)
fix 在Web应用程序启动时(而不是在Servlet加载时)处理所有ServletSecurity批注,以确保一致地应用约束. (市场)
fix 调用类转换器时的次要优化. (荣)
Web applications
add 48672 :添加有关主机管理器Web应用程序的文档. Marek Czernek提供的补丁. (市场)
Other
update 将用于构建Windows安装程序的NSIS安装程序更新为3.03版. (kkolinko)
Tomcat 7.0.84 (violetagg)发行于2018-01-24
Catalina
fix 47214 :在SecurityManager下运行时,请使用循环预加载匿名内部类,以确保以后代码中的更改或使用其他编译器时都可以安全. (kkolinko)
add 57619 :对如何处理JAR URL进行小的优化,以减少重复的String对象在内存中的存储. Dmitri Blinov提供的补丁. (市场)
add 61810 :支持配置间隔以在没有访问jar时保持所有jar处于打开状态,非正数间隔表示保持jar始终处于打开状态. (呼星)
fix 61886 :如果在SecurityManager下运行时收到的第一个请求是异步Servlet,则预加载其他类以防止SecurityException . (市场)
fix 61916 :当通过setHeader()addHeader()设置内容类型以及通过setContentType()设置内容类型时,扩展AddDefaultCharsetFilter以添加字符集. (市场)
fix 61999 :将maxSavePostSize设置为0应该在身份验证期间禁用保存POST数据. (雷姆)
Coyote
fix 61886 :在DEBUG而不是INFO非容器线程上记录错误. 异常将通过异步错误处理机制提供给应用程序. (市场)
fix 61993: Improve handling for ByteChunk and CharChunk instances that grow close to the maximum size allowed by the JRE. (markt)
Jasper
add 43925 :添加一个新的系统属性( org.apache.jasper.runtime.BodyContentImpl.BUFFER_SIZE ),以控制Jasper在缓冲标记主体时使用的缓冲区大小. (市场)
Web applications
add 61223 :将mbeans-descriptors.dtd文件添加到自定义MBean文档中,以便用户为构造自定义组件的mbeans-descriptors.xml文件时使用参考. (市场)
fix 部分修复61886 . 如果股票行情自动收录器示例Servlet中发生I / O错误,请确保多个线程不会尝试完成AsyncContext . (市场)
fix 61886 :在示例Web应用程序中运行异步股票报价器时,防止ConcurrentModificationException . (市场)
fix 61886 :如果在停止示例Web应用程序时正在运行股票报价器示例,请防止NullPointerException和其他错误. (市场)
fix 61910 :澄清文档Web应用程序中allowLinking选项的含义. (市场)
add 将OCSP配置信息添加到SSL How-To. Marek Czernek提供的补丁. (市场)
fix 62006 :为tomcat7.exe记录新的JvmOptions9命令行参数. (市场)
jdbc-pool
fix 61312 :使用已关闭的连接的语句缓存时,请防止NullPointerException . (kfujino)
Other
update 将Commons FileUpload的内部fork更新为6c00d57(2017-11-23)以进行一些代码清理. (市场)
update 将Commons Codec的内部fork更新为r1817136以进行一些代码清除. (市场)
fix 本机源捆绑包(用于Commons Daemon和Tomcat Native)不再复制到部署目标的bin目录中. 现在,它们仅被复制到发布目标的bin目录中. (市场)
Tomcat 7.0.83 (violetagg)未发布
Catalina
add 在Java 9或更高版本下运行时,并且启用了JreMemoryLeakPreventionListenerurlCacheProtection选项,请使用Java 9中添加的API仅禁用JAR URL连接的缓存. (市场)
fix 61581 :修复可能SecurityException使用与所述APR /本地连接器时SecurityManager . (市场)
fix 61597 :在Java 9上运行并启用类路径扫描时,扩展StandardJarScanner以扫描模块路径上的JAR. (市场)
fix 修复Wrapper.findInitParameter()的JMX描述符. (荣)
fix 61601 :在JAR扫描和Web应用程序类加载中添加了对多发行版JAR的支持. (市场)
fix Revert the change from 7.0.80 that called ServletResponse.setLocale() if the Content-Language HTTP header was set directly. (markt)
add Provide the SessionInitializerFilter that can be used to ensure that an HTTP session exists when initiating a WebSocket connection. Patch provided by isapir. (markt)
fix 在关闭过程AsyncContext实例超时时,请避免可能的NullPointerException . (市场)
Coyote
fix 57870 :在Java 7或更高版本上运行时,在构造GZIPOutputStream时要利用新的syncFlush参数,而不要使用自定义FlushableGZIPOutputStream实现作为解决方法. (市场)
fix 61736 :当客户端在网络数据包之间留出较大的时间间隔时,可提高NIO连接器的性能. 紫龙宋提供的补丁. (市场)
Jasper
add 使碧玉编译的JSP为Java 9.除了与配置JSP的servlet用于通过Java 9 compilerSourceVMcompilerTargetVM ,有必要更换ecj-4.4.2.jar与较新版本的支持Java 9.(Markt的)
fix 61816 :属性值或模板文本中的无效表达式应触发翻译(编译时)错误,而不是运行时错误. (市场)
WebSocket
fix 61604 :在websocket客户端中添加对身份验证的支持. J Fernandez提交的补丁. (雷姆)
Web applications
fix 61603 :在需要时为状态Servlet输出添加XML过滤. (雷姆)
fix 更正有关CGI servlet如何将请求映射到CGI How-To中的脚本的描述. (市场)
Tribes
fix 修复尝试重新发送频道消息的错误行为,该行为比maxRetryAttempts的实际设置值maxRetryAttempts . (kfujino)
fix 通过避免比较失败的成员数和剩余的发件人数而导致意外的ChannelException确保其余的发件人可以发送频道消息. (kfujino)
fix 确保处理了在SelectionKey处理期间未ChannelException其他剩余SelectionKey. (kfujino)
Other
fix 改进对61439的修复,并从Tomcat发行版中完全排除JPA,JAX-WS和EJB批注. (市场)
fix 改进对认可目录的处理. 仅在显式设置JAVA_ENDORSED_DIRS系统属性或$CATALINA_HOME/endorsed存在的情况下,才使用认可目录机制. 在Java 9上运行时,任何尝试使用认可目录机制的操作都会触发错误,并且Tomcat无法启动. (荣)
code 重构以准备Java9.重构以避免使用某些将在Java 9以后版本中弃用的方法. (市场)
add 51496 :使用Windows安装程序时,请检查所请求的服务名称是否已经存在,如果存在,请提示用户选择其他服务名称. Ralph Plawetzki提供的补丁. (市场)
fix 将必要的Java 9配置选项添加到启动脚本中,以防止Web应用程序停止时生成警告. (市场)
fix 61590 :启用service.bat以识别何时为Java 9 JDK配置了JAVA_HOME . (市场)
fix 61598 :更新Windows安装程序以在查找JRE时搜索新的(从Java 9开始)注册表位置. (市场)
add 将用于发布工件的SHA-512哈希生成添加到构建脚本中. (市场)
fix 61658根据RFC8081,更新字体的MIME映射以使用font/* . (市场)
update 将Tomcat本机库的打包版本更新为1.2.16,以获取使用APR 1.6.3和OpenSSL 1.0.2m构建的最新Windows二进制文件. (市场)
update 将用于构建Windows安装程序的NSIS安装程序更新为版本3.02.1. (kkolinko)
update 当在Microsoft Windows的已安装应用程序列表中显示Tomcat时,更新Windows安装程序以将" Apache Software Foundation"用作发布服务器. (kkolinko)
fix 61803 :从安全性文档中删除过时的SSL信息. (雷姆)
Tomcat 7.0.82 (violetagg)发行于2017-10-03
Catalina
fix 61210 :在SecurityManager下运行时,请勿在该配置文件不存在时打印关于无法读取日志记录配置文件的警告. (市场)
add 61280 :将RFC 7617支持添加到BasicAuthenticator . 请注意,默认配置不会更改现有行为. (市场)
fix 61452 :修复了使用WebDAV时导致UnsupportedEncodingException的复制粘贴错误. (市场)
fix 纠正7.0.80中的回归,该回归中断了VirtualDirContextextraResourcePaths属性对相对路径的使用. (市场)
add 61489 :使用CGI servlet时,使从查询字符串生成命令行参数(根据RFC 3875的4.4节)为可选. 默认情况下启用此功能以与以前的版本保持一致. 基于jm009的补丁. (市场)
fix 更正7.0.80和7.0.81中的回归,该回归两次将表示Web应用程序的DirContext封装在ProxyDirContext ,而不是一次. (市场)
fix 61542 :修复了CVE-2017-12617并防止在启用HTTP PUT时通过特制请求上传JSP. (市场)
fix 加载Java 9的JVM logging.properties文件时,请使用正确的路径.(rjung)
fix 61554 :从RAT分析中排除打算在GitHub中显示的异常编码的测试文件和markdown文件. 克里斯·Thistlethwaite提供的补丁. (市场)
Coyote
fix 48655 :使用sendfile,APR / native连接器和多部分下载时,允许Tomcat彻底关闭. (市场)
fix 58244 :处理OpenSSL使用票证恢复TLS会话而完整的客户端证书链不可用的情况. 在这种情况下,没有链的客户证书将显示给应用程序. (市场)
fix 读取请求InputStream时,修复随机的SocketTimeoutException . 基于Peter Major的补丁. (市场)
fix 60900 :如果在新数据到达该连接的同时关闭连接,则避免APR轮询程序中出现NullPointerException . (市场)
add 添加一个选项以拒绝包含HTTP头的请求,这些请求的HTTP头带有无效(非令牌)头名称,且响应为400. (市场)
WebSocket
fix 61491 :使用permessage-deflate扩展名时,请正确处理非空消息之后的空消息发送,以避免IllegalArgumentException . (市场)
Tribes
fix To avoid unexpected session timeout notification from backup session, update the access time when receiving the map member notification message. (kfujino)
fixTcpFailureDetector失败检测检查失败时,将成员信息添加到日志消息中. (kfujino)
fix 避免Ping超时,直到通过接收MSG_START消息完全启动添加的地图成员. (kfujino)
fix 发送频道消息时,请确保发送方已连接. (kfujino)
fix 更正备用节点选择逻辑,使节点0连续两次返回. (kfujino)
fixRpcChannel修复responseMap竞争条件. (kfujino)
jdbc-pool
fix 61391 :如果将SlowQueryReport拦截器配置为记录失败的查询,并且连接已被放弃,请确保记录失败的查询. Craig Webb提供的补丁. (市场)
fix 61425 :当testWhileIdle设置为truedefaultAutoCommit设置为false时,确保空闲连接的事务已终止. 王正提供的补丁. (kfujino)
fix 61545 :使用池化XA连接时,可以正确处理PooledConnection接口中定义的方法的调用. Nils Winkler提供的补丁. (市场)
Other
fix 61439 :从tomcat-embed-core.jar中删除Java Annotation API类,并将它们打包在嵌入式发行版的单独的JAR中,以为最终用户提供更大的灵活性来处理与JRE和/或其他JAR的潜在冲突. (市场)
fix 61441 :在从RPM安装Java的平台上运行时, JAVA_HOME通过daemon.sh脚本改进对JAVA_HOME的检测. (荣)
update 将Tomcat本机库的打包版本更新为1.2.14,以获取使用APR 1.6.2和OpenSSL 1.0.2l构建的最新Windows二进制文件. (市场)
fix 更新针对59904的修复程序,以便接受小于零的值,而不是引发 NegativeArraySizeException. (雷姆)
fix 61563 :正确的西班牙语翻译错误. GonzaloVásquez提供的补丁. (csutherl)
Tomcat 7.0.81 (violetagg)发行于2017-08-16
Catalina
fix 在7.0.80中纠正破坏了WebDAV的回归. (市场)
Tomcat 7.0.80 (violetagg)未发布
Catalina
fix 56785 :如果目录路径存在于Tomcat用户无法读取的类路径上,请避免NullPointerException . (市场)
fix 在安全管理器下运行时,FileHandler要求将附加的删除文件权限授予JULI. 清理日志文件的线程被标记为守护程序线程. (紫罗兰色)
fix 61229: Correct a regression in 7.0.78 that broke WebDAV handling for resources with names that included a & character. (markt)
add 如果直接设置了Content-Language HTTP标头,则尝试从标头值确定Locale,然后使用派生的Locale调用ServletResponse.setLocale() . (市场)
fix 61232 :禁用日志轮换时,在生成日志文件名时将仅使用一个分隔符. 例如,如果前缀是catalina. 后缀为.log则日志文件名将为catalina.log而不是catalina..log . 由Katya Stoycheva提供的补丁. (紫罗兰色)
fix 61253 :当Digester.updateAttributes引发异常而不是忽略异常时,添加警告消息. (csutherl)
fix 61313 :在JNDIRealm中将读取超时配置为可配置的,并确保读取超时将导致尝试故障转移到AlternateURL. 基于Peter Maloney和Felix Schumacher的补丁. (市场)
Coyote
fix 61086 :确保为HTTP 205响应明确发信号通知为空的请求正文. 对r1795278的附加修复. 基于Alexandr Saperov提供的补丁. (紫罗兰色)
fix 61322 :更正了将BIO与外部执行器一起使用时针对60319的修复而导致的两个回归. 首先,如果未指定,则使用Executor中的maxThreads设置作为maxConnections的默认设置. 其次,在计算禁用保持活动的点时,使用Executor中的maxThreads . (市场)
add 添加其他日志记录以记录在连接器停止过程中等待NIO轮询器停止时发生的问题. (市场)
fix 防止在NIO连接正常关闭期间引发异常. 这样可以使TLS连接完全关闭. (市场)
Jasper
add 53031 :使用Jasper Ant任务和javac编译JSP时,添加了对fork选项的支持. (市场)
WebSocket
add 57767 :在尝试建立WebSocket连接时,为WebSocket客户端添加支持以下重定向. J Fernandez提供的补丁. (市场)
Other
add 52791 :添加了从配置文件设置Windows安装程序使用的默认值的功能. Sandra Madden提供的补丁. (市场)
Tomcat 7.0.79 (violetagg)发行于2017-07-01
Catalina
fix 61101 :作为响应,CORS过滤器应设置Vary标头. 由Rick Riemer提交. (雷姆)
add 61105 :添加新的JULI FileHandler配置,以指定保留日志文件的最大天数. (紫罗兰色)
fix 改进SSLValve ,使其能够处理来自Nginx的客户端证书标头. 基于Lucas Ventura Carro的补丁. (市场)
fix 61154 :在安全管理器下运行时,默认情况下允许Manager和Host Manager Web应用程序启动. 这是通过添加自定义权限org.apache.catalina.security.DeployXmlPermission来实现的,该权限允许应用程序使用META-INF/context.xml文件,然后将该权限授予Manager和Host Manager. (市场)
fix 61173 :为oacatalina.startup.Tomcat抛光Javadoc. peterhansson_se提供的补丁. (紫罗兰色)
add 新的配置属性crawlerIps已添加到oacatalina.valves.CrawlerSessionManagerValve . 使用此属性,可以指定一个正则表达式,该正则表达式将用于基于搜寻器的IP地址来识别它们. 基于Tetradeus提供的补丁. (紫罗兰色)
fix 61180 :如果初始化Web应用程序用来生成会话标识符的SecureRandom实例花费的时间超过100毫秒,则记录警告消息而不是信息消息. Piotr Chlebda提供的补丁. (市场)
fix 61185 :通过AsyncContext.dispatch()分派异步请求时, getRequestURI()确保分派请求的getRequestURI()与原始请求的getRequestURI()匹配. (市场)
fix 61201 :确保CGI可执行文件的SCRIPT_NAME环境变量以一致的方式填充,而不管CGI Servlet如何映射到请求. (市场)
fix 61215 :在org.apache.catalina.valves包的mbean-descriptors.xml文件中正确定义addConnectorPortinvalidAuthenticationWhenDeny ,以便可以通过JMX访问属性. (市场)
Coyote
fix 61086 :为HTTP 205响应明确发信号通知为空的请求主体. (市场)
fix 还原针对漏洞60718的修复中引入的更改,该更改将客户端将连接从200断开到500时将访问日志中记录的状态代码更改了.(标记)
fix 使异步错误处理更加健壮. 特别要确保在非容器线程上发生I / O错误后,为所有已注册的AsyncListener调用onError() . (市场)
Jasper
fix 44787 :改进了JSP编译器配置选项无效时的错误消息. (市场)
WebSocket
fix 当用于PongMessageMessageHandler未实现MessageHandler.Whole时,更正日志消息. (荣)
fix 提高用于报告WebSocket消息发送结果的Future的线程安全性. (市场)
fix 61183 :在先前的修订中为58624纠正了一个回归,该回归可能会触发死锁,具体取决于客户端代码采用的锁定策略. (市场)
Web applications
fix 更好地记录Jasper的trimSpaces选项的含义. (市场)
fix 61150 :将Manager和Host-Manager Web应用程序配置为允许与CRSFPreventionFilter相关的会话对象进行序列化和反序列化,以避免在安全管理器下运行时Web应用程序停止和/或启动时的警告消息和/或堆栈跟踪. (市场)
Tribes
add 添加对Tribes组件的JMX支持. (kfujino)
Other
add 45832 :向用于与Manager应用程序通信的Catalina Ant任务添加HTTP DIGEST身份验证支持. (市场)
fix 45879 :将RELEASE-NOTES文件添加到由Tomcat Windows安装程序创建的安装的根目录中,以使用户更容易识别已安装的Tomcat版本. (市场)
fix 61076 :记录Context元素的altDDName属性. (市场)
fix 61145 :将缺少的@Documented注释添加到注释API中的注释中. 由Katya Todorova提供的补丁. (市场)
fix 61146 :在注释API的@EJB注释中添加缺少的lookup()方法. 由Katya Todorova提供的补丁. (市场)
fix 在"上下文容器配置参考"中更正拼写错误. 由Katya Todorova提供的补丁. (紫罗兰色)
Tomcat 7.0.78 (violetagg)发行于2017-05-16
General
add 允许使用构建属性test.exclude排除JUnit测试类,并在BUILDING.txt中记录该属性. (荣)
Catalina
fix 查看Tomcat重新编码URI或URI组件的那些地方,并确保应用正确的编码(路径与查询字符串不同),并确保一致地应用编码. (市场)
fix 确定当前请求是否用于自定义错误页面时,对DefaultServlet使用更可靠的机制. (市场)
fix 确保在Default或WebDAV servlet处理错误时,无论使用doGet()方法触发错误的原始请求,都将通过doGet()方法处理错误资源. (市场)
fix 如果指定的静态自定义错误页面不存在或无法读取,请确保返回预期的错误状态,而不是404.(标记)
fix 配置WebDAV servlet并对位于WEB-INF下方的自定义错误页面进行错误分配时,请确保显示目标错误页面而不是404响应. (市场)
add 61047 :在默认的web.xml中为woff2字体添加MIME映射. 贾斯汀·威廉姆森(Justin Williamson)提供的补丁. (紫罗兰色)
fix 纠正选择用于解码SSIServletExternalResolver的查询字符串的编码的逻辑,以便正确考虑ConnectoruseBodyEncodingForURI属性. (市场)
fix 61072 :尊重文档声明,该文档声明允许使用平台默认安全随机数生成会话ID. (雷姆)
fix 更正oacconnector.CoyoteAdapter#parseSessionCookiesId的javadoc. 约翰·安德鲁(徐州王)通过Github提供的补丁. (紫罗兰色)
Jasper
fix 60925 :改善访问由接口定义的属性的处理时BeanELResolver是下使用SecurityManager . (市场)
WebSocket
fix 61003 :即使在处理期间发生某些异常, oatwebsocket.AsyncChannelWrapperSecure确保正确重置oatwebsocket.AsyncChannelWrapperSecure中的读写标志. (markt / violetagg)
Web applications
add 在BUILDING.txt中记录属性test.excludePerformance . (荣)
addmaxIdleTime属性的文档添加到Channel Receiver文档. (kfujino)
jdbc-pool
code 重构为代理类创建的构造函数,以减少重复的代码. (kfujino)
fixStatementFacade ,对已关闭的语句的方法调用将引发SQLException而不是NullPointerException . (kfujino)
Other
fixJre8Compat对Java 8的正确注释. 由Gibbub提供的补丁程序. (紫罗兰色)
fix 60932 :在i18n消息中使用时,请正确转义单引号. 基于Michael Osipov的补丁. (市场)
Tomcat 7.0.77 (violetagg)发行于2017-04-02
Catalina
add 54618HttpHeaderSecurityFilter HSTS preload参数的支持添加到HttpHeaderSecurityFilter . (市场)
fix 60911 :确保在查找SSL会话ID时不会抛出NPE. 基于Didier Gutacker的补丁. (紫罗兰色)
Coyote
fix 使用NIO2连接器时,请确保在处理流末尾之前已处理WebSocket关闭帧,以确保正确处理了流末尾. (市场)
fix 60852 :在配置属性和内部代码中使用时,拼写可正确压缩. 基于Michael Osipov的补丁. (市场)
fix 改进请求传递时的sendfile处理. (市场)
Jasper
fix 改进简单标签的错误处理,以确保使用后即可释放并销毁标签. (雷姆,violetagg)
fix 60844 :当使用比方法所需的参数值少的参数值来调用EL方法表达式时,可以正确处理错误. Daniel Gray提供的补丁. (市场)
jdbc-pool
fix 60764 :在StatementFacade中实现equals()hashCode() ,以便在设置了任何语句代理的情况下,在封闭的语句上调用这些方法. 可以使用useStatementFacade属性更改此行为. (kfujino)
Tomcat 7.0.76 (markt)发行于2017-03-16
Catalina
code 通过getDefaultWebXmlListener()使Tomcat子类更容易修改默认的web.xml设置. 亚伦·安德森(Aaron Anderson)提供的补丁. (市场)
fix 当多个线程正在管理对象并且需要引用注释缓存时,减少默认InstanceManager实现中的争用. (市场)
code 60674 :从CorsFilter删除final标记以启用子分类. (市场)
fix 60683 :在某些JVM上进行IO时,安全管理器故障导致NPE. (csutherl)
fix 60688 :将Apache Commons BCEL的内部fork更新为r1782855,以将早期访问Java 9支持添加到注释扫描代码中. (市场)
fix 60718 :改进了异步处理的错误处理,并更正了多种情况,其中未触发requestDestroyed()事件,并且未在访问日志中进行输入. (市场)
fix 60808 :确保ServletRequest.getParameterMap()返回的Map完全不可变. 基于woosan提供的补丁. (市场)
fix 60824 :在SecurityManager下运行时,如果存在会话,则在会话中正确缓存Subject . Jan Engehausen提供的补丁. (市场)
fix 确保在触发应用程序侦听器时使用请求和响应外观. (标记/毫米)
fix 当在连接器上禁用HTTP TRACE请求时,请确保来自WebDAV Servlet的HTTP OPTIONS响应在返回的Allow标头中不包括TRACE. (市场)
Coyote
fix 确保与连接器一起使用的执行程序线程池预先启动配置的最小空闲线程数. (市场)
add 60594 :允许使用系统属性tomcat.util.http.parser.HttpParser.requestTargetAllow在请求中最近处理的一些无效字符. (csutherl)
Jasper
fix 重构为JSP生成的代码,以减少标签所需代码的大小. (市场)
Cluster
add 使accessTimeoutClusterSingleSignOn配置. accessTimeout用作复制映射中PING的超时时间. (kfujino)
fix 60806 :为避免ClassNotFoundException ,请确保将Web应用程序类加载器传递给ReplicatedContext . (kfujino)
WebSocket
fix 60617 :通过代理建立WebSocket连接时,正确创建CONNECT请求. Svetlin Zarev提供的补丁. (市场)
Tribes
fix 确保NoRpcChannelReply消息没有接收到RpcCallback . (kfujino)
fix 60722 :在为由AsyncContext.dispatch()触发的调度生成路径时,请考虑当前Context上的dispatchersUseEncodedPaths设置. (市场)
Other
fix 60620 :修复了Eclipse项目的配置,该配置因引入SafeForkJoinWorkerThreadFactory帮助器类而SafeForkJoinWorkerThreadFactory . 此类无法使用Java 6构建.(kkolinko)
update 将Tomcat本机库的打包版本更新为1.2.12,以获取使用OpenSSL 1.0.2k构建的最新Windows二进制文件. (紫罗兰色)
add 60784 :更新所有测试HTTP状态行的单元测试,以检查状态代码后是否需要空格. 迈克尔·奥西波夫(Michael Osipov)提供的补丁. (市场)
update 将用于构建Windows安装程序的NSIS安装程序更新为3.01版. (市场)
fix 重构生成脚本和NSIS安装程序脚本,以便可以使用NSIS 2.x或NSIS 3.x来生成安装程序. 这主要是为了重新启用在基于Linux的CI系统上构建安装程序的功能,在该系统上,NSIS 3.x和wine的组合会导致安装程序构建失败. (市场)
Tomcat 7.0.75 (violetagg)发行于2017-01-24
Cluster
add 使accessTimeoutBackupManager配置. accessTimeout用作复制映射中PING的超时时间. (kfujino)
Web applications
fix 确保在文档和主机管理器应用程序中正确显示ASF徽标图像. (紫罗兰色)
Tomcat 7.0.74 (violetagg)not released
Catalina
add 53602 :将HTTP状态代码451(RFC 7725)添加到Tomcat识别的HTTP状态代码列表中. (市场)
fix 嵌入Tomcat时正确处理主机的configClass属性. (市场)
fix 60379 :一旦不再需要GSS凭证,则将其丢弃. 迈克尔·奥西波夫(Michael Osipov)提供的补丁. (市场)
fix 60380 :确保对HttpServletRequest#logout()的调用触发对TomcatPrincipal#logout()的调用. 基于Michael Osipov的补丁. (市场)
fix 60387 :更正了oacatalina.AccessLog.setRequestAttributesEnabled的javadoc. 对于不同的实现,默认值是不同的. (紫罗兰色)
code 60393 :在Realm#authenticate(GSSContext, boolean)实现中使用一致的参数命名. (市场)
fix 60395 :在Authenticator将不完整的GSSContext传递给领域时进行记录,因为它指示Authenticator器中的错误. 迈克尔·奥西波夫(Michael Osipov)提供的补丁. (市场)
update 更新引用了在Java 9上运行所需的选项的警告,以对这些选项使用最新的语法. (市场)
fix 60513 :使用RMI清除代码解决了线程安全问题. (雷姆)
add 60620 :扩展JreMemoryLeakPreventionListener以提供保护以防止ForkJoinPool.commonPool()相关的内存泄漏. (市场)
Coyote
fix 如果将端点配置为侦听特定类型(例如0.0.0.0:: 0.0.0.0任何本地地址,请确保端点在关闭期间能够解锁接收器线程. (市场)
fix 确保默认情况下为APR启用sendfile. (市场)
fix 在提供响应时删除文件时,防止读取超时. 仅在启用APR连接器和sendfile的情况下才观察到此问题. (紫罗兰色)
fix 改进选择用于解锁接收器的地址的逻辑,以考虑平台配置为0.0.0.0::时不会监听所有本地地址的逻辑. (市场)
fix 60409 :当无法完成sendfile请求时,请确保仅将处理器添加到缓存一次. (markt / violetagg)
Jasper
add 44294 :在UEL表达式中添加了对varargs的支持. (市场)
fix 60356 :修复了依赖于JAR中打包的嵌套标记文件的JSP的预编译. (市场)
fix 60431 :改进了UEL表达式中对varargs的处理. 基于Ben Wolfe的补丁. (市场)
fix 60497 :使用try / finally后,恢复以前的标签重用行为. (雷姆)
fix 改进简单标签的错误处理,以确保使用后即可释放并销毁标签. (雷姆)
fix 60497 :使用更好的变量名称作为标签重用标志的后续修订. (雷姆)
fix 将简单标签的try / final方法恢复使用. (雷姆)
Web applications
fix 更正《主机配置参考》中的错字. 通过comment.apache.org报告的问题. (紫罗兰色)
add 在文档Web应用程序中,必须明确指出,集群要求所有集群网络流量都需要一个安全的网络. (市场)
update 将ASF徽标更新为新版本.
Tribes
fix 减少从其他域接收到的消息的警告日志,以避免过多的日志输出. (kfujino)
add 添加超过超时时间已收到PING消息的日志消息. (kfujino)
fix 当收到超过超时时间的PING消息时,请确保将有效成员添加到地图成员中. (kfujino)
WebSocket
fix 60437 :避免websocket客户端中的握手溢出. (雷姆)
jdbc-pool
add 58816 :实现jdbc-pool的统计信息. 该统计数据的相关信息是borrowedCountreturnedCountcreatedCountreleasedCountreconnectedCountreleasedIdleCountremoveAbandonedCount . (kfujino)
fix 60194 :如果validationQuery没有指定,连接验证是通过调用完成isValid()方法. (kfujino)
fix 60398 :修复TestSlowQueryReport . (kfujino)
add 启用重置统计信息而不重新启动池. (kfujino)
Other
fix 60366 :将catalina.bat更改为直接使用LOGGING_MANAGERLOGGING_CONFIG变量以配置日志记录,而不是修改JAVA_OPTS . Petter Isberg提供的补丁. (紫罗兰色)
add 添加了新属性test.verbose ,以控制测试的输出是否在控制台上显示. Emmanuel Bourg提供的补丁. (紫罗兰色)
update 更新用于Windows的Apache Tomcat安装程序中使用的ASF徽标,以使用新版本.
fix Josh Soref提供的拼写更正. (紫罗兰色)
Tomcat 7.0.73 (violetagg)发行于2016-11-14
Catalina
fix 60117 :使用OneLineFormatter时,请确保LogLevel的名称已本地化. Tatsuya Bessho提供的补丁. (kfujino)
add 60151 :改进当ResourceLink无法指定类型,指定未知类型或指定错误类型时的异常错误消息. (市场)
fix 60167 :使用PasswdUserDatabase时,忽略/etc/passwd文件中的空行. (市场)
fix 改进对链接的全局资源的访问检查,以处理当前类装入器是Web应用程序类装入器的子级的情况. (市场)
fix 60199 :如果反序列化问题阻止会话属性加载,请记录警告. (市场)
fix 阅读提供的关机密码时,请正确测试控制字符. (市场)
fix 配置JMX远程侦听器时,请指定凭据的允许类型. (市场)
Coyote
fix 60123 :避免潜在的线程问题,该问题可能导致在当前请求的处理时间内返回过大的值. (市场)
fix 60174 :的Log实例HeadersTooLargeException请求处理过程中. (市场)
fix 更正HTTP标头解析器,以便不将DEL视为有效的令牌字符. (市场)
fix 60319 :使用执行器时,请将其与连接器属性maxThreadsminSpareThreadsthreadPriority断开连接,以使配置设置能够始终如一地报告. 使用执行程序时,这些连接器属性将报告为-1 . 执行者使用的值可以通过执行者进行设置和获取. (市场)
fix 如果在非容器线程上进行异步处理期间发生I / O错误,请确保触发了onError()事件. (市场)
fix 改进在非容器线程上进行异步处理期间对I / O错误的检测,并在检测到它们时触发异步错误处理. (市场)
add 将其他对有效字符的检查添加到HTTP请求行解析中,以便更快地拒绝无效的请求行. (市场)
Web applications
add 将示例使用classesToInitialize属性JreMemoryLeakPreventionListener到文档Web应用程序. 基于Cris Berneburg的补丁. (市场)
fix 60192 :更正Manager应用程序状态输出中的错字. Radhakrishna Pemmasani提供的补丁. (市场)
fix 更正" HTTP连接器方法"中的错字. 通过comment.apache.org报告的问题. (紫罗兰色)
fix 修复jdbc-pool中validationInterval属性的默认值. (kfujino)
fix 更正" CGI操作方法"中的错字. 通过comment.apache.org报告的问题. (紫罗兰色)
fix 60344 :在BUILDING.txt中添加有关使用带有正确行尾的源包的注释. (市场)
Tribes
fix 当代理节点发送备份检索消息时,请确保使用已设置的channelSendOptions而不是默认的channelSendOptions . (kfujino)
jdbc-pool
fix 60099 :使用StatementCache时,请确保将所有方法参数都用作缓存键. (kfujino)
fix 60139 :对于正确的Javadoc PoolConfiguration.getValidationIntervalsetValidationInterval . Phillip Webb报道. (kfujino)
Other
add 将文档添加到bin / catalina.bat脚本中,以提醒用户在作为Windows服务运行时环境变量不会影响Tomcat的配置. 基于James HH Lampert的文档补丁. (舒尔茨)
Tomcat 7.0.72 (violetagg)发行于2016-09-19
Catalina
fix 确保在使用类加载器的情况下考虑Digester.useContextClassLoader . (紫罗兰色)
Jasper
fix 60101 :删除已删除的类的预加载. (紫罗兰色)
jdbc-pool
fix 返回已标记为可疑的连接时通知jmx. (kfujino)
fix 确保POOL_EMPTY通知已添加到jmx通知类型. (kfujino)
Other
update 将Tomcat本机库的打包版本更新为1.2.10,以获取使用OpenSSL 1.0.2j构建的最新Windows二进制文件. (市场)
update 61599 :更新到Commons Daemon 1.1.0,以增强对Java 9的支持. (市场)
Tomcat 7.0.71 (violetagg)未发布
Catalina
fix 57705 :为远程主机和远程地址阀和过滤器拒绝的请求添加调试日志记录. 基于Graham Leggett的补丁. (市场)
updateContext元素的sessionCookiePathUsesTrailingSlash属性的默认值更改为false因为将Servlet映射到/*时引起的问题比默认情况下不启用此选项的安全风险更为严重. (市场)
fix 59708 :修改LockOutRealm逻辑. 在锁定期间进行的有效身份验证尝试将不再将锁定计时器重置为零. (市场)
fix 在调用InstanceManager.destroy()之前,请改善围绕用户代码的错误处理,以确保执行该方法. (市场)
fix 确保通过JMX读取StandardWrappersingleThreadModel属性不会触发相关servlet的初始化. 在某些框架下,这可能会触发意外的初始化线程,如果初始化不是线程安全的,则初始化可能会失败. (市场)
fix 默认情况下,将用于获取请求分配器的路径视为已编码. 可以通过Context的dispatchersUseEncodedPaths属性针对每个Web应用程序更改此行为. (市场)
fix 59839 :将roleSearchAsUser应用于roleSearchAsUser中的所有嵌套搜索. (fschumacher)
add 提供一种机制,使该容器能够在SecurityManager下运行时检查组件(通常是Web应用程序)是否已被授予给定权限,而不必使当前执行堆栈通过该组件. 使用此新机制将SecurityManager保护扩展到摘要程序的系统属性替换功能. (市场)
add 通过ResourceLink检索对象时,请确保获得的对象属于预期的类型. (市场)
fix 59866 :扫描WEB-INF/classes classs的注释时,请勿扫描WEB-INF/classes/META-INF (如果存在),因为将永远不会从该位置加载类. (市场)
fix 59912 :修复了输入流处理中的一种极端情况,即在读取POST正文时可能抛出IOException情况. (市场)
fix 59966 :如果web.xml中的错误页面配置无效,请不要启动Web应用程序. (市场)
fix 将CGI Servlet切换到标准日志记录机制,并删除对debug属性的支持. (市场)
add 在CGI Servlet中添加一个新的初始化参数envHttpHeaders ,以默认情况下缓解httpoxyCVE-2016-5388 ),并提供一种可用于缓解未来任何类似问题的机制. (市场)
add 动态添加和删除ResourceLink ,请确保仅在原本应有的情况下才可以通过ResourceLinkFactory看到全局资源. (市场)
fix 60008 :在处理COR请求时,请将具有URI file格式的任何来源都视为有效来源. (市场)
fix 改进由状态转换触发的生命周期事件期间的异常处理. 现在捕获到异常,并且组件现在处于FAILED状态. (市场)
fix 修复了读取全局web.xml时文件描述符泄漏的问题. (市场)
fix 60041 :如果在运行Web应用程序时删除JAR,则会出现更好的错误消息. 注意:不支持在应用程序运行时删除JAR,并且会出现错误. 基于gehui的补丁. (市场)
Coyote
fix 在调用InstanceManager.destroy()之前,请改善围绕用户代码的错误处理,以确保执行该方法. (市场)
fix 59904 :为每个请求允许的cookie数量添加一个限制(默认为200). 基于gehui的补丁. (市场)
fix 使针对Realm实现的定时攻击变得更加困难. (舒尔茨)
add 重构实现以下要求的代码:必须先延迟从非容器线程对complete()dispatch()的调用,然后再调用容器启动的线程,而该容器启动的线程必须调用startAsync()完成. 而不是通过阻塞非容器线程来实现这一点,而是扩展内部状态机来对此进行跟踪. 这消除了阻塞非容器线程可能触发死锁的可能性. (市场)
Jasper
fix 在调用InstanceManager.destroy()之前,请改善围绕用户代码的错误处理,以确保执行该方法. (市场)
fix 改进自定义标记的错误处理,以确保将标记返回到池中或在使用后释放并销毁. (市场)
fix 修复了StringIndexOutOfBoundsException. 基于wuwen通过Github提供的补丁. (紫罗兰色)
WebSocket
fix 在调用InstanceManager.destroy()之前,请改善围绕用户代码的错误处理,以确保执行该方法. (市场)
fix 59868 :澄清Manager Web应用程序的文档,以使服务器部分中的主机名和IP地址更加清晰,这是主要的主机名和IP地址. (市场)
fix 59908 :如果由于超时而关闭会话,请确保关闭消息中包含原因短语. (市场)
Web Applications
fix 当根本原因是客户端断开连接,因为日志未添加任何值时,请勿在Drawboard WebSocket示例的错误处理程序中记录IOException的其他情况. (市场)
fix 59642 :在"领域方法"的" DataSourceRealm领域"部分中提及localDataSource . (市场)
fix 修复59399的后续措施 . 确保为所有Realm记录了新的属性transportGuaranteeRedirectStatus . 还要记录NullRealm以及为引擎自动创建的时间. (市场)
fix MBeans描述符操作方法已移至mbeans-descriptors-howto.html . Radoslav Husar提供的补丁. (紫罗兰色)
fix 60034 :更正文档Web应用程序的"管理人员指南"页面中的错字. (市场)
Tribes
add 当ping超时时,添加日志消息. (kfujino)
fix 如果在AbstractReplicatedMap#leftOver方法上已收到ping消息,请确保通知该成员处于活动状态,而不是忽略它. (kfujino)
jdbc-pool
fix 当连接验证失败时,修复重复的连接版本. (kfujino)
fix 确保不要删除已经释放的废弃连接. (kfujino)
fix 为了避免PoolCleaner意外跳过,请在已计划的任务中删除执行间隔的检查代码. (kfujino)
fix 59849 :如果尚未初始化借用的PooledConnection确保通过initSQL执行连接验证(如果需要). (kfujino)
fix 59850 :确保在启用StatementCache拦截器时关闭ResultSet . (kfujino)
fix 59923 :减小validationInterval的默认值,以避免潜在的问题,即在数据库重新启动后继续返回无效的连接. (kfujino)
fix 启用StatementDecoratorInterceptor时,请确保将ResultSet作为代理对象返回. (kfujino)
fix 60043: Ensure that the suspectTimeout works without removing connection when the removeAbandoned is disabled. (kfujino)
fix 返回已标记为可疑的连接时添加的日志消息. (kfujino)
fix 更正Javadoc for ConnectionPool.suspect() . 基于Yahya Cahyadi的补丁. (市场)
Other
add 使用镜像网络而不是ASF主站点来下载当前的ASF依赖项. (市场)
update 将Tomcat本机库的打包版本更新为1.2.8,以获取最新的修补程序,并使1.2.8成为最低推荐版本. (市场)
fix 修复了mbeans-descriptors.xml文件中的拼写错误. (紫罗兰色)
update 将Commons BCEL的内部fork更新为r1757132以与BCEL 6版本保持一致. (市场)
update 将Commons Codec的内部fork更新为r1757174. 代码格式仅更改. (市场)
update 将Commons FileUpload的内部fork更新为afdedc9. 这样就可以修复较大的多部分边界,从而提高性能. (市场)
fix 更新Objenesis的下载位置. (紫罗兰色)
Tomcat 7.0.70 (violetagg)发行于2016-06-20
Catalina
fix 59219 :如果在异步处理期间引发Exception确保调用AsyncListener.onError() . (市场)
fix 59220 :如果异步请求超时并且响应已经提交,请确保调用AsyncListener.onComplete() . (市场)
fix 59261 :如果请求在调用时不是处于异步模式下,则ServletRequest.getAsyncContext()现在将根据Servlet规范的要求引发IllegalStateException . (市场)
fix 59310 :请勿为未设置Content-Length值的HEAD请求的自定义响应添加Content-Length: 0标头. (市场)
fix 规范化路径时,请改善路径以/.结尾的处理/./..并确保输入和输出是否以/结束是一致的. (市场)
fix 59317 :确保调度后HttpServletRequest.getRequestURI()返回编码的URI,而不是解码的URI. (市场)
fix 使用ALLOW-FROM选项时,请确保根据规范正确构造了标题X-Frame-Options的值. (紫罗兰色)
add 59399 :为Tomcat随附的Realm实现添加一个新选项,该选项允许按Realm控制用于HTTP-> HTTPS重定向的HTTP状态代码. (市场)
fix 59449 :在ContainerBase ,确保删除子容器的过程与添加一个子容器的过程相反. 张虎星提供的补丁. (市场)
fix 可以避免与RMI目标相关的内存泄漏,这使它们成为需要修复的应用程序错误,而不是JRE错误. 因此,在Web应用程序停止时开始记录与RMI目标相关的内存泄漏. 添加一个选项来控制是否检查这些泄漏. 如果在Java 9上运行且启用了此检查,但没有要求的命令行选项,则记录警告. (市场)
fix 修复了Web应用程序类加载器和资源高速缓存的并发读写的潜在并发问题. (市场)
fix 59619 :在Web应用程序类加载器中,始终将path用作资源缓存的键,以提高命中率. 这也解决了针对56777的修复所暴露的问题,该问题使从类路径中加载基于文件的配置资源成为可能. (市场)
fix 无法注册MBean时修复错误消息. (kfujino)
Coyote
fix 58970 :修复了NIO连接器中的连接计数错误,该错误意味着某些断开的连接没有从当前连接计数中删除. (市场)
fix 59289 :在意外关闭的情况下,请勿回收升级处理器. (雷姆)
fix 确保使用非令牌的HTTP方法名称的请求(RFC 7231要求)被拒绝,并带有400响应. (市场)
fix 当AJP连接器处理异步请求时,请确保在开始下一个请求之前完全完成了请求处理. (市场)
fix 如果异步调度导致请求处理完成,请确保在开始处理下一个请求之前吞下任何剩余的请求主体,否则可以将剩余的主体读取为导致400响应的下一个请求的开始. (市场)
Jasper
fix 修复表达式语言实现中的内存泄漏,该泄漏导致第一个Web应用程序的类加载器使用表达式固定在内存中. (市场)
fix 59654 :强制执行JSP规范第7.3.1节中有关TLD文件允许位置的要求. 张虎星提供的补丁. (市场)
WebSocket
fix 确保客户端断开连接触发了相关WebSocket端点的错误处理. (市场)
Web Applications
fix 更正SSL / TLS配置方法中的错字. 通过comment.apache.org报告的问题. (紫罗兰色)
fix 58891 :更新SSL方法. 根据亚历山大·贾尔(AlexanderKjäll)的建议. (市场)
Tribes
fix 修复潜在的NPE,该NPE在使用静态群集时取决于静态成员的属性的设置顺序. (kfujino)
add 为与ChannelInterceptorBase相关的通道添加get / set方法. (kfujino)
fix 与多播群集环境一样,在静态群集环境中,本地成员从群集接收者继承属性. (kfujino)
add 为与每个Channel服务相关的通道添加get / set方法. (kfujino)
add 将名称添加到频道以标识频道. 在tomcat群集环境中,将群集名称+"-Channel"设置为默认值. (kfujino)
add 将通道名称添加到由通道服务调用的线程中,以标识关联的通道. (kfujino)
fix 停止频道时,请确保从频道服务中清除频道实例. (kfujino)
add 在复制映射中实现映射状态. (kfujino)
fix 确保在复制映射的启动/停止期间未执行ping操作. (kfujino)
fix 在复制映射中的ping处理中,不发送INIT消息,而是发送新引入的PING消息. (kfujino)
jdbc-pool
fix 使用池清洁器线程修复内存泄漏,该线程清洁器线程保留了对第一个Web应用程序使用连接池的Web应用程序类加载器的引用. (市场)
Other
update 将Tomcat本机库的打包版本更新为1.2.7,以获取基于OpenSSL 1.0.2h和APR 1.5.2的Windows二进制文件. (紫罗兰/市场)
update 删除对Windows Itanium的本机代码(Windows Service Wrapper,APR /本机连接器)支持. (市场)
update 将Commons File Upload的内部fork更新为r1743698(1.3.1以及其他修复). (市场)
fix 58626 :添加了对新环境变量( USE_NOHUP )的支持,该变量导致在启动Tomcat时使用nohup . 默认情况下禁用此功能,但在HP-UX上默认禁用该功能,因为在HP-UX上启动Tomcat时需要使用它. (市场)
Tomcat 7.0.69 (violetagg)发行于2016-04-15
Catalina
fix 修复StandardContext的mbean定义的InstanceManager属性的类型. (kfujino)
add 58351: Make the server build date and server version number accessible via JMX. Patch provided by Huxing Zhang. (markt)
fix 59001 :如果将Tomcat安装在其中一个段以感叹号结尾的路径上,则可以正确处理这种情况. (市场)
fix 扩展59001的修复程序,以涵盖Tomcat的自定义jar:war:URL中使用的特殊序列. (市场)
fix 59043 :如果使用HttpServletRequest.logout()则在与单点登录关联的会话到期时避免警告. (市场)
fix 59054 :确保在Valve在会话中注册自身时,在分布式环境中使用CrawlerSessionManagerValve不会触发错误. (市场)
add 如果用户尝试通过已弃用(且忽略)的Manager.setMaxInactiveInterval()方法尝试配置默认会话超时,则记录警告消息. (市场)
fix 更正7.0.68中引入的回归,其中不推荐使用的Manager.getMaxInactiveInterval()方法以分钟(而不是秒Manager.getMaxInactiveInterval()返回当前的默认会话超时. (市场)
fix 如果为主机配置了不存在的appBase,请在尝试将外部WAR文件扩展到其中之前创建appBase. (市场)
fix 59115 :使用Servlet 3.0文件上载时,提交的文件名可以作为令牌或带引号的字符串提供. 如果是带引号的字符串,请先将该字符串取消引号,然后再返回给用户. (市场)
fix 59123 :一旦不再需要JNDIRealm使用的NamingEnumeration对象,请关闭它们. (舒马赫/市场)
fix 59138 :当Web应用程序类加载器已加载键类而非值类时,更正了针对ThreadLocal相关的内存泄漏的误报警告. (市场)
fix 59145 :当用户注销与SSO关联的会话时,请不要记录无效的警告. (市场)
fix 59151 :修复了针对56917的修订中的回归问题,该回归将其他(可能是不必要的)验证添加到了提供的重定向位置. (市场)
fix 59206 :确保当未指定catalina.base时, oatomcat.util.file.ConfigFileLoader不会引发NPE. (紫罗兰色)
fix 59213 :异步分派应基于包装的请求. (雷姆)
fix 59217 :在oatomcat.util.http.ServerCookie中的路径回收中删除重复oatomcat.util.http.ServerCookie . 补丁由中村京平提供. (紫罗兰色)
fix 确保javax.servlet.ServletRequestjavax.servlet.ServletResponse期间提供javax.servlet.AsyncListener登记经由提供javax.servlet.AsyncEvent.getSuppliedRequestjavax.servlet.AsyncEvent.getSuppliedResponse (violetagg)
fix 明确说明不允许在WebServlet和WebFilter批注中同时指定urlPatterns和value属性的日志消息. (紫罗兰色)
fix 确保由Valves引起的异常在日志文件中可用,以便在禁用oacatalina.valves.ErrorReportValve.showReport时可以对其进行评估. 补丁程序由Svetlin Zarev提供. (紫罗兰色)
fix 59247 :预加载ResourceEntry作为某些JVM上安全管理器问题的解决方法. (kkolinko /雷姆)
fix 59269 :更正PersistentManagerBase的实现,以便minIdleSwap功能按设计,并且换出会话以将活动会话数保持在maxActiveSessions以下. (市场)
Coyote
fix 58646 :纠正sendfile的问题,该问题导致两次将处理器添加到缓存中,导致响应中断. (市场)
fix 59015 :如果在关闭过程中Poller遇到错误,请修复关闭期间APR Poller循环不断的潜在原因. (市场)
fix 将JSSE(BIO,NIO)和OpenSSL(APR)的默认TLS密码限制为当前认为安全的密码. (市场)
add 添加一个新的环境变量JSSE_OPTS ,该变量旨在用于将JVM范围的配置传递给JSSE实现. 默认值为-Djdk.tls.ephemeralDHKeySize=2048 ,可防止Diffie-Hellman密钥太弱. (市场)
WebSocket
fix 59014 :确保在收到关闭消息后可以发送WebSocket关闭消息. (市场)
fix 当最终消息片段的长度为零时,正确处理部分消息的压缩. (市场)
add 扩展示例中提供的WebSocket编程回显端点,以处理二进制消息以及部分消息. 这使代码与Tomcat 8保持一致,并使针对WebSocket实现运行Autobahn测试套件变得更加容易. (市场)
fix 59119 :使用安全连接时,更正WebSocket客户端的读取逻辑. (市场)
fix 59134 :对于通过代理建立的安全连接,正确的客户端连接逻辑. (市场)
fix 59189 :显式释放被持有的本机内存InflaterDeflater使用PerMessageDeflate时和WebSocket的会话结束. 基于Henrik Olsson的补丁. (市场)
Web Applications
fix 更正Proxy How-To中ServletRequest.getServerPort()的描述. 通过comment.apache.org报告的问题. (紫罗兰色)
fix 在示例Web应用程序中的Comet Chat servlet中修复潜在的不确定等待. (市场)
fix 59229 :修复了HTTP文档中的错误,并明确指出HTTP NIO连接器使用非阻塞I / O读取HTTP请求标头. (市场)
fix Update in the documentation the link to the maven repository where Tomcat snapshot artifacts are deployed. (markt/violetagg)
fix 在调用ServletContext.log(String, Throwable)GenericServlet.log(String, Throwable)的文档中进行澄清,记录在SEVERE级别. (紫罗兰色)
Tribes
fix 如果在获取会话时将代理节点提升为主节点,则将新主节点的更改通知原始备份节点. (kfujino)
fix 当代理节点无法检索备份条目时,请避免使用NPE. (kfujino)
add 收到意外消息时添加日志. (kfujino)
add 添加指示该成员是localMember的标志. (kfujino)
Other
fix 58283 :在构建过程中,将库的默认下载位置从/usr/share/java更改${user.home}/tomcat-build-libs . 艾哈迈德·霍斯尼(Ahmed Hosni)提供的补丁. (市场)
fix 59031 :使用Windows卸载程序时,请勿删除已符号链接到Tomcat目录结构中的任何目录的内容. (市场)
update 修改默认的tomcat-users.xml文件,使用户难以配置打算与Manager应用程序的示例Web应用程序一起使用的条目. (市场)
fix 59211 :将hamcrest添加到Eclipse类路径. 补丁由张虎星提供. (紫罗兰色)
update 59280 :将用于构建Windows Installers的NSIS安装程序更新为版本2.51. (kkolinko)
Tomcat 7.0.68 (violetagg)发行于2016-02-16
General
add 允许使用构建属性test.name配置多个JUnit测试类模式,并在BUILDING.txt中记录该属性. (荣)
Catalina
fix 正确实现validateClientProvidedNewSessionId以便如果启用了validateClientProvidedNewSessionId ,则客户端提供的会话ID可能会被拒绝. (市场)
fix 56785 :如果目录路径存在于Tomcat用户无法读取的类路径上,请避免NullPointerException . (kkolinko)
fix 57906 :在Java 6上使用安全管理器运行时,禁止WebappClassLoader日志消息,这是由EL评估期间调用java.beans.Introspector.findExplicitBeanInfo()引起的. (kkolinko)
fix 58692 :使StandardJarScanner更强大. 如果无法扫描类路径条目而不是触发Web应用程序失败,则记录警告. (市场)
fix 58701 :卸载Servlet时,请在StandardWrapper重置instanceInitialized字段,以便可以正确初始化新实例. (市场)
fix 58702 :如果客户端中止连接,请确保生成访问日志条目. (市场)
fix 修复了Findbugs报告的各种问题. (紫罗兰色)
fix 58735 :将对X-XSS-Protection标头的支持添加到HttpHeaderSecurityFilter . Jacopo Cappellato提供的补丁. (市场)
fix 58751 :正确处理AsyncListener在异步超时时分派给Servlet且Servlet使用sendError()来触发错误页面的情况. 包括一个基于Andy Wilkinson提供的代码的测试用例.
fix 58765 :更改默认的mapperContextRootRedirectEnabledtrue ,因为这是必需的,因为默认的正确会话管理sessionCookiePathUsesTrailingSlash . (市场)
fixStatusManagerServlet添加到只能由特权应用程序加载的Servlet列表. (市场)
fix 简化代码并修复org.apache.catalina.core.DefaultInstanceManager类中的消息. (kkolinko)
fix 确保当DefaultServlet提供自述文件时,将使用正确的文件编码(如果指定). (紫罗兰色)
fix 修复Connector MBean的localPort属性的声明:它是只读的. (kkolinko)
fix 58766 :通过首先检查文件名,可以更快地在注释扫描过程中跳过非类文件. 改善调试日志记录. (kkolinko)
fix 58768 :如果由于无效位置导致重定向失败,则记录警告. (市场)
fix 58836 :处理转发的请求时正确合并查询字符串参数,其中目标包括查询字符串,该查询字符串包含无值的参数. (市场/ kkolinko)
fix 确保在HostConfig.deployWAR()中发生不太可能的错误情况下重置共享Digester. (kkolinko)
fix 修复DataSourceRealm中潜在的JDBC资源泄漏. (舒尔茨)
fix 58900: Correctly undeploy symlinked resources and prevent an infinite cycle of deploy / undeploy. (markt)
fix 与SecurityManager一起运行时,保护ResourceLinkFactory初始化. (kkolinko)
add 扩展群集会话管理器实现中的可用功能,该功能使会话属性复制可以基于属性名称过滤到所有会话管理器实现中. 请注意,配置属性名称已从sessionAttributeFilter更改为sessionAttributeNameFilter . 在加载和卸载时应用筛选器,以确保将Web应用程序停止时所做的配置更改应用于所有持久数据. (市场)
add 扩展会话属性过滤选项,以包括基于值的实现类的过滤和可选的WARN级别日志记录(如果已过滤属性). 这些选项可用于Tomcat附带的所有Manager实现. 使用SecurityManager ,默认情况下将启用过滤. (市场)
fix 58905 :确保Tomcat.silence()使正确的记录器Tomcat.silence()并遵守当前设置. (市场)
fix 58946 :确保通过RequestDispatcher处理时,请求参数映射保持不变. (市场)
Coyote
add AJP连接器的新配置选项ajpFlush禁用了AJP刷新数据包的发送. (荣)
Jasper
fix 修复org.apache.el.util.MessageFactory中丢失消息的处理. (紫罗兰色)
fix 忽略engineOptionsClassscratchdir安全管理器下运行时. (市场)
Cluster
fix 为了避免心跳线程和后台线程同时运行Channel.heartbeat ,如果SimpleTcpCluster heartbeatBackgroundEnabled设置为true ,请确保不启动心跳线程. (kfujino)
WebSocket
fix 57489 :确保即使关闭消息发送失败,在关闭WebSocket连接时也会调用onClose() . 包括Barry Coughlan的测试用例. (市场)
fix 修复了会话关闭上的计时问题,该问题可能导致即使消息已完成也为不完整的消息引发异常. (市场)
Web Applications
fix 在" JNDI资源"方法中更正一些错字. (市场)
fix 不要在Manager应用程序中不必要地创建会话. (市场)
fix 不要在主机管理器应用程序中不必要地创建会话. (市场)
fix 58723: Clarify documentation and error messages for the text interface of the manager to make clear that version must be used with path when referencing contexts deployed using parallel deployment. (markt)
fix 更正用于自动部署的预期行为的文档中的错误. 如果更新了WAR并且存在扩展目录,则在unpackWARstrue ,将通过扩展WAR来删除并重新创建unpackWARs . (市场)
fix 58935 :删除文档中关于在Manager应用程序中使用jar:file: URL的错误引用. (市场)
Tribes
fix 添加对静态集群中本地成员的启动通知的支持. (kfujino)
fix 忽略来自其他域的不必要的成员删除操作. (kfujino)
fix 添加对静态集群中本地成员的关闭通知的支持. (kfujino)
fix 确保异步会话复制线程是守护程序线程. (kfujino)
Other
update 将用于构建Windows Installers的NSIS Installer更新到2.50版. (市场/ kkolinko)
Tomcat 7.0.67 (violetagg)发行于2015-12-10
Catalina
add 56917 :根据RFC7231(HTTP / 1.1),允许HTTP / 1.1和更高版本的重定向使用相对URI. 这由Context上的新属性useRelativeRedirects控制,默认为true . (市场)
fix 58660 :更正了7.0.66中的回归,该回归是由将上下文根的重定向从映射器移动到默认Servlet的更改引起的. (市场)
fix 修复了部署应用程序时HostConfig潜在的NPE. 覆盖率扫描报告的问题. (紫罗兰色)
fix 58655 :修正IllegalStateException时调用HttpServletResponse.sendRedirect()RemoteIpFilter . 这是由于尝试正确生成重定向的绝对URI引起的. 有了对56917的修复,现在重定向可能是相对的,从而使RemoteIpFiltersendRedirect()实现更加简单. 这也解决了当从http重定向到https到从https重定向到http时重定向可能没有按预期表现的问题. (市场)
WebSocket
fix 58658 :更正7.0.66中的回归,该回归阻止Tomcat在Java 6上启动,除非删除了WebSocket JAR(需要Java 7). (市场)
Web Applications
add 在群集通道文档中添加有关heartbeatSleeptime属性和optionCheck属性的默认值的描述. (kfujino)
Tribes
fix 修复AbstractReplicatedMap.breakdown()潜在的NPE. (kfujino)
Tomcat 7.0.66 (violetagg)未发布
General
update 58596 :澄清RUNNING.txt中有关如何使用环境变量的描述. (市场)
Catalina
fix 34319StoreBase.processExpire JDBCStore加载StoreBase.processExpire中足够旧的那些键以使其过期. 基于Tom Anderson的补丁. (fschumacher)
fix 56777 :允许使用URL和文件配置基于文件的配置资源(用户数据库,证书吊销列表,密钥库和信任库). 张虎兴提供的反向端口. (markt / violetagg)
add 57741 :启用CGI servlet以使用标准错误页面机制. 请注意,如果CGI Servlet的debug init参数设置为10或更高,则将绕过标准错误页面机制,而将返回CGI Servlet生成的调试响应. (市场)
add 58486 :防止与XML解析相关的另外两个可能的内存泄漏. (市场)
code 58497 :使AbstractHttp11Processor易于扩展. (市场)
fix 58508 :如果角色名称包含MBean名称中不允许的字符,则在生成关联的MBean时转义角色名称. (市场)
fix 58522 :修复了迭代Web应用程序资源时的并发问题. (紫罗兰色)
fix 58534 :删除了由Anthony Whitford提供的oatomcat.websocket.pojo.PojoMethodMappingoatomcat.util.net.AprEndpoint Patch中的重复条件测试. (紫罗兰色)
fix 58535 :需要反向排序时,请使用Collections.reverseOrder . (紫罗兰色)
fix 58537 :在一些内部类的oacatalina.valves.ExtendedAccessLogValve由静态的. 安东尼·惠特福德提供的补丁. (紫罗兰色)
fix 58540 :从oacatalina.connector.Request删除了未使用的代码. 安东尼·惠特福德提供的补丁. (紫罗兰色)
fix 5854158544 :它是更有效的调用Integer.toString(int)的,而不是Integer.valueOf(int).toString()时只需要一个原始的字符串表示. 基于Anthony Whitford提供的补丁. (紫罗兰色)
fix 5854158547 :这是更有效的调用valueOf(...)而不是数构造函数. 基于Anthony Whitford提供的补丁. (紫罗兰色)
fix 58545 :在某些用例中,根据Anthony Whitford提供的补丁,使用Map.entrySet()代替Map.keySet()效率更高. (紫罗兰色)
add 添加一个新的RestCsrfPreventionFilter,它为REST API提供基本的CSRF保护. (紫罗兰色)
fix 58581 :如果自定义错误页面失败,请退回到标准错误页面,而不要抛出NPE. 基于张虎星的补丁. (市场)
fix 58582 :组合领域应对其子领域执行后台处理. 基于Aidan提供的补丁. (kkolinko)
fix 处理不太可能的情况,即使用不同的会话设置部署不同版本的Web应用程序. (市场)
add 添加一个新的上下文选项(默认情况下启用),该选项可在允许其提供的会话ID用作当前Web应用程序中新会话的ID之前,另外检查至少一个其他Web应用程序中是否使用了客户端提供的会话ID. (市场)
add 将对DIGEST身份验证的支持添加到JNDIRealm. 基于Alexis Hassler的补丁. (市场)
fix 58603 :使用RemoteIpFilter时,请确保HttpServletRequest.getRequestURL()返回正确的值. (市场)
fix 确保在嵌入式Tomcat中日志记录配置在垃圾回收期间不会丢失. (紫罗兰色)
add 移动为上下文根和目录提供重定向的功能,其中将尾随/从映射器添加到DefaultServlet . 这样,在进行重定向之前,任何配置的Valves和Filters都可以处理此类请求. 可以通过Context的mapperContextRootRedirectEnabledmapperDirectoryRedirectEnabled属性来配置此行为, mapperDirectoryRedirectEnabled属性可用于还原以前的行为. (市场)
fix 58635 :使用Java代理运行Tomcat时,允许在代理代码中设置断点. 基于张虎星的补丁. (市场)
fix 将路径参数处理添加到HttpServletRequest.getContextPath() . 这是57215的修复程序. (市场)
Jasper
fix 57136#c25 :实现一个设置,该设置控制在解析JSP页面上的属性中的EL表达式时使用什么引用规则(规范的JSP.1.6). 设置名称是quoteAttributeEL ,它被配置为JSP Servlet的初始化参数(可以通过Web应用程序配置)和JspC的命令行选项. 默认值已更改为true ,它将恢复在Tomcat 7.0.64中实现的行为. 这意味着将属性引用应用于EL引用之上. 这提供了与旧版本的Tomcat和其他实现的更好的兼容性. (kkolinko)
Cluster
fix 在DeltaManager.requestCompleted中优化会话锁定范围. (kfujino)
fix 在静态集群成员身份中启用本地成员的显式配置. (kfujino)
fix Fix potential integer overflow in DeltaSession. Reported by coverity scan. (fschumacher)
Tribes
code 明确区分关闭有效负载和成员验证的处理. 处理关闭有效负载时,不需要验证完成消息. (kfujino)
fix 启动StaticMembershipInterceptorStaticMembershipInterceptor检查所需的拦截器. 如果所需的拦截器不存在,它将发出警告日志. (kfujino)
fix 即使已注册到删除可疑列表的静态成员已消失,也请确保将静态成员注册到添加可疑列表中. (kfujino)
fix 更正关于检测到未在成员资格中注册的成员的警告日志. (kfujino)
fix When using a static cluster, add the members that have been cached in the membership service to the map members list in order to ensure that the map member is a static member. (kfujino)
WebSocket
fix 将实例管理器用于服务器端点实例. (雷姆)
add 55006 :现在,WebSocket客户端在建立与服务器的WebSocket连接时将使用java.net.java.net.ProxySelector配置(使用HTTP类型). 基于Niki Dokovski的补丁. (市场)
fix 58624 :更正了一个线程安全问题,该问题意味着如果在进行消息写入时关闭WebSocket连接,则阻塞消息写入可能会无限期地阻塞. (市场)
Web applications
add 在CGI Servlet的文档中明确指出,调试页不被认为是安全的,不应在生产中使用. (市场)
fix StaticMemberdomain属性不是必需的,而是可选的. (kfujino)
fix 58631 :更正文档Web应用程序的Windows Service How-To页面中的继续字符使用. (市场)
jdbc-pool
fix 58489 :更正QueryStatsComparator来保留Comparator的常规合同. (fschumacher)
fix 创建QueryStats对象时,请确保选中了maxQueries . 如果maxQueries的值小于或等于0,则永远不会创建QueryStats . (kfujino)
fix 修复ConnectionPoolPooledConnection潜在的整数溢出. 通过覆盖率扫描报告. (fschumacher)
Tomcat 7.0.65 (violetagg)发行于2015-10-19
Catalina
add 57681 :添加了支持并行加载Web应用程序类的Web应用程序类加载器实现. 使用此功能需要Java 7或更高版本的JRE. 基于张虎星的补丁. (市场)
fix 58187 :在修复了正确的回归57765这意味着经由Manager应用程序部署的Web应用程序的部署被推迟,直到自动部署后台进程的下次执行. (市场)
fix 58284 :正确实现会话序列化,因此带有警告的非序列化属性将被跳过. 安德鲁·肖尔(Andrew Shore)提供的补丁. (市场)
fix 58313 :修复在切换到异步之前清除编码器时对编码器映射的并发访问. (市场)
fix 58320 :修复了在异步处理期间可能并发访问请求属性的问题. (市场)
code 在准备实现增强功能57681时 ,将StandardClassLoader的使用替换为URLClassLoader . 这将从JMX中删除服务器类加载器. (市场)
fix 58352 :如果Tomcat无法从catalina.sh正常停止,即使使用-force也始终触发线程转储. 亚历山大·卡尼尔(Alexandre Garnier)提供的补丁. (市场)
fix 58416 :正确检测到强制停止未能停止Tomcat的时间,因为Tomcat进程正在等待某个系统调用或不间断. (市场)
fix 58436 :修复了关机期间JULI的ClassLoaderLogManager中的一些罕见数据争用 . (市场)
Coyote
fix 更正RequestUtil.normalize()一些边缘情况. (市场)
fix 58275: The IBM JREs accept cipher suite names starting with TLS_ or SSL_ but when listing the supported cipher suites only the SSL_ version is reported. This can break Tomcat's check that at least one requested cipher suite is supported. Tomcat now includes a work-around so either form of the cipher suite name can be used when running on an IBM JRE. (markt)
fix 58357 :由于当前不了解将APR /本机连接器与OpenSSL一起使用时的原因,当没有明显错误时,读取可能会返回错误代码. 通过将其视为EAGAIN解决HTTP升级连接. 现在,相同的修复程序已应用于标准HTTP连接器. (市场)
fix 57799 :删除对NIO SSL的无用的发送文件检查. (雷姆)
Jasper
fix 57136 :更正了先前版本中针对此问题的回归. \${应该只是EL表达式中${的转义符. 在JSP页面中, \$应该是\$的转义$ . EL规范适用于解析由${}分隔的表达式. 解析定界的${}是JSP规范的职责. (市场)
fix 58296 :修复了JSP卸载功能中的内存泄漏,这意味着对maxLoadedJsps使用非-1的值会在达到限制后触发内存泄漏. (市场)
fix 58340 :改进了JAR中打包的标记文件的错误报告. (市场)
fix 58444 :确保JSP可以与满足JSP规范中定义的要求的任何自定义基类一起使用,而无需该基类实现Tomcat特定的代码. (市场)
Cluster
fix 修复SimpleTcpCluster的默认clusterListeners. 每个会话管理器的最佳默认值都不相同. 在BackupManager从不使用ClusterSessionListener . (kfujino)
fix 如果使用BackupManager更正日志消息. (kfujino)
WebSocket
fix 58342 :修复了复制和粘贴错误,该错误意味着对于二进制和pong MessageHandler,删除MessageHandler可能失败. DJ提供的补丁. (市场)
fix 58414 :使用每个消息放气时,正确处理发送零长度消息的问题. (市场)
Web applications
fix 正确的集群方法文档. (kfujino)
Extras
fix 确保JULI适配器不包含LogFactoryImpl类. Benjamin Gandon提供的补丁. (市场)
Tribes
add 在server.xml中添加对ChannelListenerMembershipListener配置的支持. (kfujino)
fix 如果使用ReplicatedMap更正日志消息. (kfujino)
jdbc-pool
fix 通过JMX更改与池大小相关的属性时,请确保已正确配置池. (kfujino)
Tomcat 7.0.64 (violetagg)发行于2015-08-25
Catalina
add 55317 :通过允许将ClassFileTransformer添加到WebappClassLoader来简化编织. 尼克·威廉姆斯的补丁. (市场)
fix 58031 :使(第一个)失败的原因参数解析可用作请求属性,然后使用它通过FailedRequstFilter(如果已配置)提供更好的状态代码. (市场)
fix 58086 :使用Apache Ant进行Web应用程序部署时,请确保正确处理WAR URL. (紫罗兰色)
fix 58094 :使用非标准的不可缓存资源(例如某些测试中使用的空资源)时,修复了外观错误日志. (雷姆)
fix 58096 :从/WEB-INF/classes/加载的/WEB-INF/classes/应使用该目录作为其代码库. (市场)
fix 通过正确关闭流来修复可能的资源泄漏. Coverity Scan报告的问题. (紫罗兰色)
fix 58116 :修复了针对57281的回归问题,该回归在安全管理器下运行时破坏了Comet的支持. 基于Johno Crawford提供的补丁. (市场)
fix 58179 :修复了线程安全性问题,该问题可能意味着并发线程在ServletContext上设置相同的属性都可能将null视为旧值. (市场)
fix 58192 :更正了先前版本中对58023的回归. 即使类文件是在没有清单的情况下第一次读取(和缓存)的,也要确保将类与其清单关联. (市场)
fix 修复AsyncContext实现中的线程安全问题,该问题意味着一系列start();dispatch(); 使用非容器线程的调用可能会导致先前的调度干扰后续的启动. (市场)
Coyote
fix 57943 :防止将同一套接字两次添加到缓存中. 补丁基于Ian Luo / Sun Qi的分析. (市场)
fixtext/javascript,application/javascript到可压缩MIME类型的默认列表. (紫罗兰色)
fix 58103 :在对请求进行流水线处理且先前的请求是异步请求时,请确保从等待的请求中删除了套接字,以便异步超时线程在下一个请求期间不会对其进行处理. (市场)
fix 修复了一个并发问题,该问题意味着套接字超时的更改(例如,切换到异步I / O时)并不总是立即生效. (市场)
fix 在AJP和HTTP NIO连接器中,在将套接字添加回轮询器进行读取之前,请确保已正确设置套接字超时. (市场)
fix 58157 :确保异步超时的处理不会导致不必要的分派到容器线程,这可能导致当前套接字被多次添加到Poller中,并且多次尝试为同一套接字处理同一事件. (市场)
fixRequestUtil.normalize()更正几个边缘情况. (市场)
Jasper
fix 58110 :与scriptlet部分一样,JSP页面的声明部分具有到生成的.java文件的一行一一对应的映射. 如果在声明部分中发生编译错误,请使用此信息提供更准确的错误消息. (市场)
fix 58119 :编译标记时,必须将它们放置在org / apache / jsp / tag / web目录中. 修正52725修正中的回归.(violetagg)
fix 58178 :标记文件中的表达式应使用标记文件的PageContext而不是包含页面的表达式. (市场)
WebSocket
fix 58166 :允许应用程序发送范围在3000-4999(含)之间的关闭代码. (市场)
fix 58232 :以编程方式将端点添加到javax.websocket.server.ServerContainer时,避免可能的NPE. 基于bastian提供的补丁.(violetagg)
Web applications
fix 更正QueryTimeoutInterceptor的不正确文档. 设置值不是毫秒,而是秒. (kfujino)
fix 58112 :更新在Apache Ant构建文件中使用Catalina任务的文档. (市场)
fix 为某些APR套接字读取函数改进Javadoc,这些函数对于返回值具有不一致的行为. (市场)
add 58255 :记录信号量阀. 中村京平提供的补丁. (市场)
jdbc-pool
fix 修复QueryTimeoutInterceptor潜在的NPE. (kfujino)
fix 添加对通过JMX停止池清洁器的支持. (kfujino)
fix fairness属性和ignoreExceptionOnPreLoad属性不允许通过JMX进行更改. (kfujino)
fix If the timeBetweenEvictionRunsMillis attribute is changed via jmx, it should restart the pool cleaner because this attribute affects the execution interval of the pool cleaner. (kfujino)
fix 消除对繁忙队列和空闲队列对maxActive的依赖,以便通过JMX扩展池大小. (kfujino)
Other
fix 更新样本Eclipse IDE配置,以从编译器sourcepath中排除test / webapp *和类似路径. (kkolinko)
Tomcat 7.0.63 (violetagg)发行于2015-07-06
Catalina
fix 57938 :当表单作为multipart/form-data提交,Connector的maxPostSize属性已设置为负值并且Context已配置为trueallowCasualMultipartParsing正确处理空表单字段. maxPostSize零值的含义也已更改为零限制,而不是无限制以使其与maxSavePostSize对齐并更加直观. (市场)
add 54618 :添加一个新的HttpHeaderSecurityFilter ,以将Strict-Transport-SecurityX-Frame-OptionsX-Content-Type-Options HTTP标头添加到响应中. (市场)
fix 当在Java 8 update 40和更高版本上运行时,添加针对SPNEGO身份验证问题的解决方法. 该解决方法对于较早的Java版本应该是安全的,但是可以根据需要使用SPNEGO身份验证器的applyJava8u40Fix属性禁用它. (市场)
add 57154 :添加对不具有docBase的Web应用程序(上下文元素)的支持. 这主要用于嵌入时,但也解决了运行单元测试时的罕见问题. 张虎星提供的补丁. (市场)
fix 57959 :修复了旋转日志时org.apache.juli.FileHandler死锁. (紫罗兰色)
fix 57977 :在执行PersistentValve期间正确地绑定和取消绑定Web应用程序类加载器. (市场)
fix 58023 :修复了由于在Web应用程序类加载器中不必要地缓存JAR清单而可能导致过多的内存使用. (市场)
fix 57700 :确保在所有情况下都将发送容器事件ADD_CHILD_EVENT . (紫罗兰色)
fix 在SSLValve中添加标头名称的配置字段. (雷姆)
Coyote
fix 57265: Further fix to address a potential threading issue for NIO when sendfile is used in conjunction with TLS. (markt)
fix 57931 :请确保与NIO HTTP连接器的TLS连接在握手过程中遇到问题(例如丢失或无效的客户端证书)被彻底关闭,并且确保客户端收到正确的错误代码,而不是简单地关闭连接. (市场)
add 57943 :添加了一种变通方法,以在轮询器超时处理期间捕获ConcurrentModificationException ,这导致轮询器线程停止. 这些异常的根本原因目前未知. (市场)
fix 使用APR /本机连接器修复可能很长(1000秒)的超时. (市场)
add 在APR /本机连接器的SSLProtocol配置中支持"-"分隔符,用于协议排除. (荣)
Cluster
fixDeltaSession.applyDiff()使用流之后,请确保该流已关闭. (kfujino)
WebSocket
add 57676 :当路径冲突时,列出冲突的WebSocket端点类. 根据yangkun提出的补丁. (舒尔茨)
add 将对permessage-deflate扩展的支持扩展到客户端实现.
fix 57969 :通过每个会话javax.websocket.server.ServerEndpointConfig向POJO提供路径参数,因为它们在不同请求之间有所不同. (紫罗兰色)
fix 57974 :Session.getOpenSessions应该返回与给定端点实例关联的所有会话,而不是端点类的所有会话. (雷姆)
Web applications
fix 57282 :更新请求处理顺序图. Stephen Chen提供的更新图表. (市场)
fix 57971 :更正有关群集配置设置recoverySleepTime的文档. (市场)
add 57758 :在jdbc-pool doc中添加testOnConnect属性的文档. (kfujino)
add Add description of validatorClassName attribute to testXXXX attributes in jdbc-pool docs. (kfujino)
Tribes
fix 确保仅在从现有映射成员正确传输了映射状态后,才将状态传输标志更新为true. (kfujino)
fix 不要将无法复制的节点设置为备份节点. 确保将已成功复制数据的节点设置为备份节点. (kfujino)
fix 如果复制失败,而不是将所有成员都视为失败成员,请从备份成员中排除失败成员. (kfujino)
jdbc-pool
fix 重构removeOldest中的removeOldest方法, SlowQueryReport表现出预期的效果. (kfujino)
fix 57783 :修复了SlowQueryReport NullPointerException . 为避免此NPE,请重构SlowQueryReport#removeOldest并正确处理放弃的连接. (kfujino)
Other
update 更新包将Apache Commons BCEL重命名为r1682271,以清理一些代码. (市场)
update 更新包将重命名为Apache Commons File的文件上传到r1682322,以获取1.3.1修复程序. (市场)
update 更新包将Apache Commons Codec重命名为r1682326. 无功能更改. 仅Javadoc. (市场)
Tomcat 7.0.62 (violetagg)发行于2015-05-14
Catalina
add 允许使用格式模式%{remote}p在访问日志中记录远程端口. (荣)
fix 57765 :在自动部署过程中检查上次修改时间时,请考虑以下事实: File.lastModified()的分辨率为一秒,以确保如果在最后一秒内修改了文件,则该文件的最新版本文件始终被使用. 请注意,此更改的副作用是,将来具有修改时间的文件将被视为未修改. (市场)
fix 将重新部署资源修改检查与重新加载修改检查对齐,这样,在两种情况下,现在都使用修改时间的更改而不是修改时间的增加来确定资源是否已更改. (市场)
fix 从调试消息中清除oatomcat.util.digester.Digester ,这些消息不会提供任何有价值的信息. Polina Genova提供的补丁. (紫罗兰色)
fix 57772 :重新加载Web应用程序并且需要删除表示扩展WAR的目录时,请在停止Web应用程序之后而不是在停止之前删除该目录,以避免潜在的ClassNotFoundExceptions. (市场)
fix 57801 :如果从PID文件读取的PID已被进程拥有,则改善启动脚本中的错误消息. (荣)
fix 57824 :更正了针对57252的修复程序中的回归,该回归使针对非异步请求的请求侦听器中断 ,该非异步请求触发了由ErrorReportingValve处理的错误. (markt / violetagg)
fix 57841 :改进了Web应用程序启动期间的错误日志记录. (市场)
fix 57856 :确保由RemoteIpFilter实现的任何方案/端口更改也会影响HttpServletResponse.sendRedirect() . (市场)
fix 57896 :支持防御性复制" cookie"头,以便在cookie值中转义双引号不会破坏" cookie"头的原始值. 这是一项可选功能,由org.apache.tomcat.util.http.ServerCookie.PRESERVE_COOKIE_HEADERorg.apache.catalina.STRICT_SERVLET_COMPLIANCE系统属性启用. (kkolinko)
Coyote
fix 57779 :在非容器线程上发生I / O错误时,如果使用Servlet 3+异步处理,则仅分派到容器线程来处理错误. 如果应用程序在不使用Servlet 3+异步API的非容器线程上执行I / O,则可以避免潜在的死锁. (市场)
fix 57833 :将基于JKS的密钥库用于NIO时,请确保密钥别名始终转换为小写,因为这是JKS密钥库所期望的. 基于Santosh Giri Govind M.(markt)的补丁
fix 57837 :将text/css添加到可压缩MIME类型的默认列表. (市场)
Jasper
fix 57845 :请确保,如果直接并通过web.xml中的<jsp-file>声明访问了相同的JSP,则无论如何访问JSP,对JSP的更新都是可见的(服从于重新编译的常规规则) . (市场)
fix 57855 :明确处理使用null或错误数量的参数调用MethodExpression的情况. 与其抛出ArrayIndexOutOfBoundsExceptionNullPointerException失败,不如抛出IllegalArgumentException并带有有用的错误消息. (市场)
Cluster
add 添加新属性,该属性发送跨Tomcat群集节点的会话的所有操作. (kfujino)
fixBackupManager mbean定义中删除未使用的pathname属性. (kfujino)
fix 57338 :提高了ClusterSingleSignOn阀处理在运行时从集群添加和删除节点的能力. (市场)
fix 避免在非主节点中不必要地调用DeltaRequest.addSessionListener() . (kfujino)
WebSocket
fix 57762 :确保WebSocket客户端正确检测到何时断开与服务器的连接. (市场)
fix 57776 :还原的8.0.21修复为permessage-deflate执行和不正确的操作码,因为修复是不必要的(错误仅影响主干)和固定爆发而不是固定permessage-deflate如果未压缩的消息被转换成多一条压缩的消息. (市场)
fix 修复WsRemoteEndpointImplServer类中由复制粘贴引起的日志名称拼写错误. (市场/ kkolinko)
fix 57788 :在查找类层次结构而没有发现任何内容时,请避免使用NPE. (雷姆)
add 在关闭WebSocket会话期间处理错误时,使WebSocket客户端更强大. (市场)
Web applications
add 57759 :将信息添加到keyAlias文档中,以明确表明从密钥库中读取顺序密钥取决于实现. (市场)
fix 57864 :更新文档Web应用程序,以使十六进制值对于集群发送选项无效. 基于中村京平的补丁. (市场)
Tribes
fix 修复同时处理具有所有会话数据的备份消息和具有差异数据的备份消息时的并发问题. 此修复程序确保将MapOwner设置为ReplicatedMapEntry . (kfujino)
fix 明确处理"复制"消息和"复制"节点. (kfujino)
fix 复制节点不需要发送条目数据. 仅发送条目的节点信息就足够了. (kfujino)
fix ReplicatedMap应该发送复制消息. (kfujino)
fix 修复成员消失后ReplicatedMap行为. 如果映射条目是主要的,请重建备份成员. 如果映射条目的主节点已消失,则备份节点将升级为主节点. (kfujino)
fix 将映射成员添加到ReplicatedMap ,请确保将其添加到所有其他成员的备份节点列表中. (kfujino)
Tomcat 7.0.61 (violetagg)发行于2015-04-07
Catalina
fix 55988 :更正用于Java 8 JSSE服务器首选TLS密码套件排序的检查. 确保将SSL参数提供给SSLServerSocketSSLEngine . Ognjen Blagojevic提供的补丁. (紫罗兰色)
WebSocket
fix 57761: Ensure that the opening HTTP request is correctly formatted when the WebSocket client connects to a server root. (remm)
Tomcat 7.0.60 (violetagg)未发布
Catalina
fix 通过删除NonceInfo中的易失性标记来澄清变量的线程用法. Coverity Scan报告的问题. (fschumacher)
add 49785 :为JNDIRealm启用StartTLS连接. (fschumacher)
fix 55988 :添加了对Java 8 JSSE服务器首选的TLS密码套件排序的支持. 此功能需要Java 8,并由HTTP连接器上的useServerCipherSuitesOrder属性控制. 基于Ognjen Blagojevic提供的补丁. (舒尔茨)
add 56438 :添加日志记录,该日志记录在扫描JAR时发现TLD,但未发现任何记录,因此将来可以将Tomcat配置为跳过此JAR. 基于VIN的补丁. (市场)
fix 56848 :在Java 7或更高版本的JRE上运行时,使用Locale.forLanguageTag处理Locale标头. (市场)
add 57021 :当无法加载Tomcat本机DLL时,改进了AprLifecycleListener和jni.Library中的日志记录. 基于Pravallika Peddi的补丁. (市场/ kkolinko)
fix 57180 :进一步的修复程序以支持将任意HTTP方法与CORS过滤器一起使用. (市场)
add 警告有关appBase的设置有问题. (fschumacher)
fix 57534 :CORS筛选器应仅查看Content-Type请求标头的媒体类型组件. (市场)
fix 确保在可选的SecurityListener中检查用户名不区分大小写(如所记录),并且不区分大小写的比较是使用系统默认的Locale执行的. (市场)
fix 当docBase引用内部战争并且unpackWARs设置为false时,避免注册重复添加了" .war"扩展名的无效重新部署资源. (kfujino)
fix 如果存在WAR,则在添加目录时不必触发重新加载. (kfujino)
fix 56608 :在部署外部WAR时,根据预期扩展目录是否存在而不是是否存在,在扩展目录中添加监视的资源.
fix 当由于修改的监视资源而触发重新加载时,请确保多个更改的监视资源仅触发一个重新加载,而不是一系列重新加载.
fix 57601: Ensure that HEAD requests return the correct content length (i.e. the same as for a GET) when the requested resource includes a resource served by the Default servlet. (jboynes/markt)
fix 57602 :当请求的资源包括扩展HttpServlet的Servlet服务的资源时,请确保HEAD请求返回正确的内容长度(即与GET相同). (市场)
fix 57621 :异步请求完成后,请确保吞下所有剩余的请求正文数据. (市场)
fix 57637 :使用PersistentValve时不要创建不必要的会话. (jboynes / fschumacher)
fix 57645: Correct a regression in the fix for 57190 that incorrectly required the path passed to ServletContext.getContext(String) to be an exact match to a path to an existing context. (markt)
fix 确保在HostConfig正确处理了Context unpackWAR属性. (kfujino)
fix 部署包含context.xml文件且unpackWARsfalse的WAR文件时,请忽略与WAR关联的扩展目录中可能存在的任何context.xml文件. (市场)
fix 57675 :使用扩展访问日志时正确引用字符串. (市场)
fix 57704 :未初始化org.apache.tomcat.InstanceManager时,在Web应用程序启动/停止期间修复了潜在的NPE. (紫罗兰色)
fix LAST_ACCESS_AT_START系统属性的支持添加到SingleSignOn . (kfujino)
fix 57723 :通过Tomcat.addWebapp(Host,String,String,String)将Web应用程序添加到嵌入式Tomcat实例时,请确保上下文名称和路径保持一致. (市场)
fix 57724 :在CORS过滤器中处理用户代理包括非CORS请求的来源标头的情况. (市场)
code 重构Authenticator实现以减少代码重复. (市场)
fix 搜索SCI oacatalina.Context.getParentClassLoader将使用oacatalina.Context.getParentClassLoader代替java.lang.ClassLoader.getParent . 因此,在其他环境(例如OSGi)中运行嵌入式Tomcat时,可​​以提供正确的父类加载器. (紫罗兰色)
Coyote
fix 57509 :在编写HTTP / 1.1响应标头时改进了长度检查:为4个额外的字节保留空间. (kkolinko)
add 57540 :在新的请求属性( org.apache.tomcat.util.net.secure_protocol_version )中提供TLS / SSL协议. (请注意,AJP连接器将要求使用mod_jk 1.2.41或更高版本,或者要求使用尚未发行的mod_proxy_ajp版本,或者将代理配置为将AJP_SSL_PROTOCOL请求属性发送给Tomcat.有关详细信息,请参见错误注释.) Ralf Hauser提供的补丁. (舒尔茨)
fix 57544 :在为下一个请求准备一个活动的HTTP连接时,修复了潜在的无限循环. (市场)
fix 57546 :确保断开的网络连接不会在内存中留下与该连接关联的UpgradeProcessor的引用. (市场)
fix 57570 :默认情况下, 将对带有分块输入的尾部标头的处理设置为可选,并禁用. (市场)
fixmaxSwallowSize限制应用于连接时,在关闭连接之前先读取多个字节,以使客户端有机会读取响应. (市场)
fix 在慢速和/或高负载的系统上运行时,请防止对同一套接字多次处理异步超时. (市场)
fix 57581 :更改土狼请求对象中的统计字节计数器很长,以允许2Gb以上的值. (kkolinko)
fix 修复了APR轮询程序中的并发问题,该问题意味着在低负载下有可能在10秒钟之内不将正在排队的套接字添加到轮询程序中. (市场)
fix 57638 :正在读取比套接字读取缓冲区大的AJP请求正文块时,避免IllegalArgumentException. 通常,这需要大于默认的AJP packetSize. (市场)
fix 57674 :正在写入大于套接字写缓冲区的AJP响应正文块时,避免BufferOverflowException. 通常,这需要大于默认的AJP packetSize. (市场)
code 将连接器身份验证(仅由AJP使用)重构为单独的方法. (市场)
add 57708 :为AJP连接器实现新功能-Tomcat授权. 如果将新的tomcatAuthorization属性设置为true (默认情况下处于禁用状态),则Tomcat将从AJP协议中获取经过身份验证的用户名,并使用适当的Realm进行请求以向该用户授权(即添加角色). (市场)
fix 修复了一个问题,该问题意味着在异步请求完成期间,Tomcat在异步请求完成之前读取的所有流水线数据都会丢失. 这意味着流水线请求将丢失和/或损坏. (市场)
update 将Tomcat本机库的最低推荐版本(如果使用)更新为1.1.33. (市场)
Jasper
fix 57136 :在处理表达式语言中的文字表达式时,确保仅将\${\#{视为${#{转义符),而不是将\$\#视为$#转义符. (市场)
fix 57148 :将对象强制转换为给定类型并且已为该类型注册了PropertyEditor ,如果PropertyEditor引发异常,则将空字符串正确强制为null . (kkolinko /市场)
Cluster
fix 删除总是返回true的不必要方法. 域过滤在DomainFilterInterceptorDomainFilterInterceptor . (kfujino)
WebSocket
fix 纠正了permessage-deflate实现中的一个错误,该错误意味着如果将未压缩的消息转换为多个压缩消息,则会使用错误的操作码. (市场)
Web applications
fix 通过正确关闭流来修复可能的资源泄漏. Coverity Scan报告的问题. (fschumacher)
fix 56058 :添加到AccessLogValve文档的链接,用于配置反向代理和/或Tomcat,以确保当Tomcat在反向代理后面运行时,在访问日志中使用了所需的信息. (市场)
fix 57503 :请明确指出,log4j的JULI集成仅适用于log4j1.2.x. (市场)
fix 从文档Web应用程序的上下文配置页面中删除不正确的注释,该注释指出appBase外部的WAR文件从未解压. (市场)
update 57644 :更新了示例以使用Apache Standard Taglib 1.2.5. (jboynes)
fix 57683 :确保如果客户中止与股票报价器示例的连接(客户可以断开连接的唯一方法),该示例将继续适用于现有和新客户. (市场)
fix 请更正deployOnStartup的文档,以明确表明,如果在Tomcat停止且WAR文件为true的情况下更新了WAR文件,则Tomcat在启动时将不会检测到已更改的WAR文件,并且不会用更新的WAR的内容替换解压缩的WAR文件. . (市场)
Extras
fix 57377 :消除了在使用JMXRemoteLifecycleListener指定绑定地址时阻止使用SSL的限制. 还可以为注册表以及服务器配置SSL. (市场)
Tribes
fix 确保拒绝来自DomainFilterInterceptor其他域的DomainFilterInterceptor . (kfujino)
Other
add 增强用于JNDI资源的bean工厂. 新的属性forceString允许支持非标准的字符串参数属性设置器. (荣)
fix 修复Windows上的TestAbstractAjpProcessor单元测试失败. (kkolinko)
fix 使用自己的锁对象保护MbeansDescriptorsDigesterSource中的摘要器. (fschumacher)
fix 57558 :在验证任务所需的Ant任务定义中添加缺少的JAR. (市场/ kkolinko)
add 列出在使用Ant运行测试时失败或跳过测试的测试服名称. (kkolinko)
fix 57703 :根据Servlet 2.5 MR 6,使用Servlet 2.5描述符更新Web应用程序的http-method定义.(标记)
update 更新到Tomcat Native Library版本1.1.33,以获取基于OpenSSL 1.0.1m和APR 1.5.1的Windows二进制文件. (市场)
Tomcat 7.0.59 (violetagg)发行于2015-02-04
Jasper
fix 57504 :在创建ServletContext时初始化TLD位置缓存. (jboynes)
Tribes
fix 修复当ping线程调用memberAlive()时,接收者线程调用mapMemberAdded()时可能出现的死锁. (kfujino)
Tomcat 7.0.58 (violetagg)未发布
Catalina
fix 57173 :还原修复为56953 ,打破在一些情况下注释扫描. (市场)
fix 57178 :CORS过滤器现在将null视为与*匹配的有效来源. Gregor Zurowski提供的补丁. (市场)
fix 57180 :请勿将CORS筛选器限制为仅接受使用RFC 7231中定义的HTTP方法的请求.(标记)
fix 57190 :在使用并行部署时修复ServletContext.getContext(String) ,以便返回正确的ServletContext. (市场)
fix 57208 :当在目录上下文中找不到具有指定用户名的用户的结果时,请在JNDI Realm中阻止NPE. 基于Jason McIntosh提供的补丁. (紫罗兰色)
add 57209: Add a new attribute, userSearchAsUser to the JNDI Realm. (markt)
fix 57215 :确保调用HttpServletRequest.getContextPath()的结果未按照Servlet规范的要求进行解码或规范化. (市场)
fix 57216 :改进对无效上下文路径的处理. 上下文路径应为空字符串或以'/'开头且不以'/'结尾. 无效的上下文路径将被自动更正并记录警告. 现在将null"/"值正确更改为"" . (市场/ kkolinko)
fix 在启动时加载servlet失败时记录的正确消息. 它输入了错误的名称. (kkolinko)
fix 57239 :更正多个消息拼写错误. 包括vladk的补丁. (kkolinko)
add Make the session id generator extensible by adding a SessionIdGenerator interface, an abstract base class and a standard implementation. (rjung)
add Servlet 3.1规范的后端口说明,在异步处理期间,如果在complete()dispatch()之后调用getRequest()getResponse()则应抛出IllegalStateException . (市场)
fix 修复了异步处理中的并发问题. 确保在容器线程完成之前,非容器线程无法更改异步状态. (市场)
fix 57252 :在内置错误报告之前,为应用程序配置的错误页面提供处理异步错误的机会. (市场)
fix 57281 :允许通过Servlet 3.0 API以编程方式配置非公共Filter和Servlet类,然后在SecurityManager下运行时可以无错误地使用它们. (市场)
fix 57308 :删除对System.getProperty()不必要调用,其中提供了更合适的API调用. (市场)
add 为RemoteAddrValve和RemoteHostValve添加单元测试. (荣)
add 允许将RemoteAddrValve和RemoteHostValve配置为采用行为,具体取决于连接器端口. 通过选择将连接器端口添加到字符串(与模式allowdeny相比)来allow . 使用addConnectorPort上的addConnectorPort属性进行配置. (荣)
add (可选)在RemoteAddrValve和RemoteHostValve中触发身份验证而不是拒绝. 这仅在应用程序上下文中与preemptiveAuthentication结合使用. 使用invalidAuthenticationWhenDeny上的invalidAuthenticationWhenDeny属性进行配置. (荣)
fix 防止文件描述符泄漏,并确保在检索上次修改时间后关闭文件. (紫罗兰色)
fix 57326 :启用AsyncListener实现以在AsyncListener.onStartAsync期间自行重新注册. (市场)
fix 57331 :允许ExpiresFilter在配置中使用" year"作为" years"的同义词. (kkolinko)
update 在单元测试中改进SnoopServlet. (荣)
add 将RequestDescriptor类添加到单元测试中. 调整TestRewriteValve以使用RequestDescriptor. (荣)
update 添加更多的AJP单元测试. (荣)
fix 57363 :如果LogManager无法读取配置文件而不是静默吞下异常,请登录到stderr. (市场)
fix 57420 :将UEncoder设为DirContextURLConnection中的局部变量,使其具有线程安全性. 基于kkolinko和violetagg的想法. (fschumacher)
fix 57425 :请勿将具有空值或名称的属性添加到复制的上下文中. (fschumacher)
add 57431 :在使用嵌入式tomcat时,启用将自定义类用于上下文创建. (fschumacher)
fix 57446 :确保ServletContextListener S作限制访问ServletContext方法被称为具有相同ServletContext实例都contextInitialized()contextDestroyed() (市场)
fix 57461 :当org.apache.catalina.startup.VersionLoggerListener实例记录System.getProperty("java.home")的结果时,不要以使其看起来像JAVA_HOME环境变量的方式来报告它. (市场)
fix 在关闭给定资源的流时,请确保如果发生异常,将对其进行正确处理. 该问题由Coverity Scan报告. (紫罗兰色)
fix 更改响应以使用具有共享safeChars的UEncoder实例. (fschumacher)
add 允许VersionLoggerListener记录所有系统属性. 默认情况下,此功能是关闭的. (kkolinko)
Coyote
fix 57234 :对SSL协议进行过滤以删除不安全的协议,不区分大小写. (市场)
fix 57265 :修复了sendFile和NIO连接器的一些潜在的并发问题. (市场)
fix 57324 :如果客户端使用Expect: 100-continue并且Tomcat使用非2xx响应代码响应,则Tomcat还将关闭连接. 如果Tomcat在提交响应时知道该连接将被关闭,则Tomcat现在还将发送Connection: close响应标头. (市场)
fix 57340 :使用Comet时,请确保在套接字关闭时仅将Socket和SocketWrapper返回到它们各自的缓存中(有可能多个线程同时调用close). (市场)
fix 57446 :确保ServletContextListener S作限制访问ServletContext方法被称为具有相同ServletContext实例都contextInitialized()contextDestroyed() (市场)
Jasper
fix CVE-2014-7810:在安全管理器下运行时评估EL表达式时,请勿使用特权代码块,因为这允许绕过代码限制. (市场)
fix 修复了在安全管理器下运行时BeanELResolver的问题. 某些类可能无法访问,但可能具有可访问的接口. (市场)
fix 57316 :当目录名包含似乎是URL编码的字符序列时,修复JspC. (市场)
Cluster
fix 为了在Cluster元素中启用定义, ClusterSingleSignOn实现ClusterValve . (kfujino)
fix 修复ClusterSingleSignOn mbean描述符. (kfujino)
fix 57473 :向FarmWebDeployer的WarWatcher添加完整性检查,以检测监视目录上的可疑不正确权限. (舒尔茨)
WebSocket
fix 纠正批处理消息刷新的多个问题,这些问题可能导致消息重复和/或损坏. (市场)
fix 正确实现标头不区分大小写. (标记/毫米)
fix 允许可选使用用户扩展. (雷姆)
fix 允许使用部分二进制消息处理程序. (雷姆)
fix 限制ping / pong邮件的大小. (雷姆)
fix 允许配置周期性事件的时间间隔. (雷姆)
fix 更准确的注释处理. (雷姆)
fix 在客户端中为源标头允许可选的默认值. (雷姆)
fix 57490 :在SecurityManager下运行时,可以在Web应用程序中使用Tomcat的WebSocket客户端. 基于Mikael Sterner的补丁. (市场)
add 向WebSocket会话中添加一些调试日志记录,以跟踪会话创建和会话关闭. (市场)
Web applications
fix 更新CGI Servlet的文档. 建议将Servlet声明复制到Web应用程序中,而不要全局启用它. 正确的cgiPathPrefix文档. (kkolinko)
update 改进构建说明的HTML版本,并与BUILDING.txt保持一致. 文档创建第二个Eclipse项目,以使用Java 7编译WebSocket类(在7.0.56中添加了ide-eclipse-websocket目标). (kkolinko)
update 改进Tomcat Manager文档. 重新排列,在HTML GUI,文档/ expire命令和"服务器状态"页面上添加部分. (kkolinko)
fix 修复阀门配置参考页上各节链接的歧义. (kkolinko)
update 57238 :在"安全性"和" SSL文档"页面上更新有关SSL / TLS的信息. 基于Glen Peterson的补丁. (kkolinko)
add 57261: Add vminfo and threaddump commands to Manager application. Implement VminfoTask and ThreaddumpTask Ant tasks. (kkolinko)
fix 57323 :在Manager应用程序的会话计数列表中正确显示过时的会话. (kkolinko)
add 添加文档ClusterSingleSignOn . (kfujino)
update 澄清连接器的useBodyEncodingForURI属性的文档. (kkolinko)
Other
update 在构建时下载所需的库时,请为临时文件使用随机名称,并自动创建目标目录( base.path ). (kkolinko)
update 将可选的Checkstyle库更新为6.1.1. (kkolinko)
updatebuild.xml简化setproxy任务. 从Ant 1.8.2开始就不需要Taskdef了. (kkolinko)
fix 改善build.xml Java 7的支持. 检查指定的$ {java.7.home}是否有效. 默认情况下,使用运行Ant($ {java.home})的Java而不是在$ PATH上找到的Java来运行JUnit测试. (kkolinko)
add 57344 :提供Tomcat下载的sha1校验和文件. 纠正apache-tomcat-*-embed.tar.gz存档的文件名模式,以排除* .asc文件. (kkolinko)
Tomcat 7.0.57 (violetagg)发行于2014-11-11
Catalina
add 47919 :扩展当Tomcat开始选择记录命令行参数(默认情况下启用)和环境变量(默认情况下禁用)的值时记录的信息. 请注意,添加到CATALINA_OPTS和JAVA_OPTS环境变量的值将被记录下来,因为它们是用来建立命令行的. (市场)
add 56401 :Tomcat启动时记录版本信息. (市场/ kkolinko)
fix 57022 :使用最近的Oracle JRE使用委派的凭据,确保SPNEGO身份验证继续与JNDI Realm一起使用. (市场)
fix 更正JNDI领域中的两个NPE,这些NPE在未指定roleBase且未启用roleSearchAsUser时可能触发. (市场)
fix 删除不必要的context.xml注册作为重新部署资源. 首先,已经将具有外部docBase的context.xml注册为重新部署资源. (kfujino)
fix 改进先前对56401的修复. 避免在构造函数中记录版本信息,因为版本信息随后会在不希望的时间记录下来,例如使用StoreConfig . (市场)
fix 57105 :解析web.xml时,请勿将jsp-property-group元素的缓冲区元素限制为整数值,因为允许的值为<number>kbnone . (市场)
update 将最低要求的Tomcat本机库版本(如果使用)更新为1.1.32. (市场)
update 57144 :改进ClientAbortException以提供非空消息. (kkolinko)
fix 在调用fireOnComplete之前,AsyncContext应该保持可用. (雷姆)
fix AsyncContext createListener应该使用ServletException包装任何实例化异常. (雷姆)
Coyote
add 53952 :添加了对针对APR连接器的TLSv1.1和TLSv1.2的支持. 基于MarcelŠebek的补丁. 此功能需要Tomcat Native库1.1.32或更高版本. (舒尔茨/ jfclere)
add 对于基于JSSE的HTTPS连接器(BIO和NIO),默认情况下禁用SSLv3. 更改还确保了对这些连接器禁用SSLv2,尽管JRE默认已默认禁用SSLv2. (市场)
add 默认情况下,对于APR /本机HTTPS连接器禁用SSLv3. (市场)
fix 不要在IdentityInputFilter的流末尾增加剩余计数器. (kkolinko)
fix 异步状态MUST_COMPLETE仍应启动. (雷姆)
Jasper
fix 57099 :确保在JSP导入页面指令中不允许使用分号. (市场)
Cluster
fix 避免Coverity Scan报告可能的整数溢出. (fschumacher)
WebSocket
fix 57054 :当无法单次读取对升级请求的HTTP响应时,可以正确处理WebSocket客户端中的情况; 要么是因为缓冲区太小,要么是服务器以多个数据包发送了响应. (市场)
fix 修复客户端子协议处理. (雷姆)
fix 为远程端点中的参数添加空检查. (雷姆/ kkolinko)
fix 57091 :在小应用程序环境中创建新线程(这会中断WebSocket客户端实现)时,应解决Oracle JRE的行为. 补丁由Niklas Hallqvist提供. (市场)
fix 57118 :当没有为给定对象配置合适的Encoder时,请确保由RemoteEndpoint.Basic.sendObject(Object)而不是IOException引发EncodeException . (市场)
Web applications
fix 有关ServerCookie.ALLOW_NAME_ONLY系统属性的正确文档. (kkolinko)
fix 57049 :澄清jvmRoute可以在<Engine>jvmRoute或系统属性中设置jvmRoute . (舒尔茨)
fix 文档(s / 1.0 / 1.1 /)中提到的Java WebSocket的正确版本. (市场/ kkolinko)
update 在示例Web应用程序中,将Async和Comet示例从JSP移到Servlet示例页面. (kkolinko)
update Suppress timestamp comments and enable charset header in Javadoc. (kkolinko)
jdbc-pool
fix 57079 :在将模块作为Tomcat的一部分进行构建和运输时,请为jdbc-pool模块使用Tomcat版本号. (市场/ kkolinko)
fix 修复了通过jdbc-pool build.xml文件中的" javadoc"任务生成的javadoc中损坏的概述页面. (kkolinko)
Other
update 56079 :现在对Apa​​che Tomcat Windows服务和Apache Tomcat Windows服务监视器应用程序进行了数字签名. (市场)
fix 修复Tomcat内部版本和jdbc-pool中的时间戳,使其使用24小时格式而不是12小时格式,并使用UTC时区. (市场/ kkolinko)
update 改进Tomcat构建脚本,以确保在将Eclipse JDT编译器更新到新版本时,Tomcat lib目录中仅存在一个ecj-nn.jar文件. (kkolinko)
update 56596: Update to Tomcat Native Library version 1.1.32 to pick up the Windows binaries that are based on OpenSSL 1.0.1j and APR 1.5.1. (markt)
code 在Tomcat测试中:启动时当前测试方法的日志名称. (kkolinko)
Tomcat 7.0.56 (violetagg)发行于2014-10-06
Catalina
fix 扫描类文件(例如,用于批注)并读取MethodParameters结构中的参数数量时,根据JVM规范,仅读取单个字节(而不是两个字节). Francesco Komauli提供的补丁. (市场)
fix 即使目录不可用,也要允许JNDI Realm启动. 一旦启动了Realm,不可用的目录就不会致命,而当Realm启动时,该目录也不必是致命的. 基于CédricCouralet的补丁. (市场)
fix 56736 :如果在非容器线程调用AsyncContext.dispatch()但在容器线程开始处理分派之前触发了异步超时,请避免使用不正确的IllegalStateException . (市场)
fix 56739 :如果应用程序通过调用HttpServletResponse.sendError()在异步处理期间处理了应用程序线程上的错误,则确保该应用程序有机会通过相应的应用程序定义的错误页面(如果已配置)报告该错误. (市场)
fix 56771 :当所有的备用或备份资源查找javax.naming.directory.DirContextjavax.naming.NameNotFoundException将在搜索结束时抛出的资源是不是在这些替代或备份可用javax.naming.directory.DirContext . 基于Sheldon Shao的补丁. (紫罗兰色)
fix 56796 :停止Web应用程序时消除不必要的睡眠. (市场)
fix 56801 :提高了org.apache.tomcat.util.file.Matcher性能,该性能用于过滤JAR以便在Web应用程序启动期间进行扫描. 基于Sheldon Shao的补丁. (kkolinko)
fix 56825 :启用抢占式身份验证以与SSL身份验证器一起使用. 基于jlmonteiro的补丁. (市场)
fix 56857 :修复了在安全管理器下运行时调用ServletContext方法时的线程安全问题. (市场)
code 56882 :添加测试用例以处理转发,并包括重新加载上下文时的用例. (kkolinko)
fix 56900 :修复了在读取Coverity Scan报告的属性文件时某些潜在的资源泄漏的问题. 基于Felix Schumacher提供的补丁. (市场)
fix 56902 :修复了Coverity Scan报告的默认Servlet中的潜在资源泄漏. 基于Felix Schumacher提供的补丁. (市场)
fix 56903 :更正StandardContext.getResourceOnlyServlets()的返回值,以使多个名称之间用逗号分隔. 由Coverity Scan识别,并根据Felix Schumacher的补丁进行修复. (市场)
fix 修复了在Web应用程序部署期间执行的多部分元素合并操作. 由Coverity Scan识别. (紫罗兰色)
fix 当使用格式令牌xO(XXX)时,请更正ExtendedAccessLogValve写入的信息,以使标头XXX的多个值之间用逗号分隔. 由Coverity Scan识别. (紫罗兰色)
fix 修复了在读取MANIFEST.MF文件以获取Coverity Scan报告的扩展名依赖项时潜在的资源泄漏的问题. (紫罗兰色)
fix 正确处理多个accept-language标头,而不是仅使用第一个标头来确定用户的首选语言环境. (市场)
fix 修复了读取属性,文件和其他资源时一些潜在的资源泄漏. 由Coverity Scan报告. (紫罗兰色)
fix 使用并行部署并在主机上启用undeployOldVersions功能时,请正确地取消部署旧版本的上下文. 如果当前上下文未在运行,请确保Tomcat不会取消部署较早的Context. (kfujino)
fix 部署war时,如果war没有META-INF / context.xml或deployXML为false,则在配置库中将XML文件添加到重新部署资源中. 如果在配置库中创建了XML文件,则会进行重新部署. (kfujino)
code 进行了各种更改,以减少Tomcat的Apache Commons BCEL副本中的不必要的代码,从而减少了Web应用程序启动时注释扫描所花费的时间. 包括kkolinko和hzhang9的贡献. (市场)
fix 56938 :确保在区分大小写的文件系统上运行时,取消部署时正确删除了具有混合大小写上下文路径并作为目录部署的Web应用程序. (市场)
add 57004 :向StuckThreadDetectionValve的JMX bean中添加stuckThreadCount属性. JiříPejchal提供的补丁. (舒尔茨)
fix 57011 :在异步处理期间处理错误时,请确保正确回收请求和响应. (市场)
fix 57016 :在使用PersistentValve请不要在PersistentValve会话时从存储中删除会话. (市场)
Coyote
fix 56780 :当在严格的SP800-131a模式下将SSL与IBM JRE一起使用时,允许Tomcat启动. (市场)
fix 56910 :防止将无效值-1用于带有APR连接器的maxConnections . (市场)
fix 确保AjpNioProtocolAjpAprProtocol启用KeepAliveTimeout . (kfujino)
Jasper
fix 43001 :启用JspC Ant任务以设置JspC选项mappedFile . (kkolinko)
fix 56797 :在EL表达式中匹配方法时,请勿将桥接方法视为其桥接方法的副本. 在这种情况下,请始终调用bridge方法的目标. (市场)
fix 更正JasperElResolver的逻辑错误. 没有功能影响,但是由于错误,代码的效率降低了. 基于martinschaef的补丁. (市场)
fix 确保在操作过程中发生I / O错误时, javax.servlet.jsp.PageContext.include(String)javax.servlet.jsp.PageContext.include(String, boolean)将引发IOException . (紫罗兰色)
fix 56908 :修复了读取jar文件时可能出现的一些资源泄漏. 由Coverity Scan报告. 基于Felix Schumacher提供的补丁. (紫罗兰色)
fix 56991 :不建议使用请求属性将<jsp-file>声明传递给Jasper,并且如果将此技术与包含一起使用,则可以防止无限循环. (市场)
fix 检查资源是否为程序包时,修复JDTCompiler中潜在的资源泄漏. 由Coverity Scan报告. (fschumacher)
WebSocket
code 56446 :在基于POJO的WebSocket端点上调用方法时,更清晰地处理异常. 根据钟欣Eu的建议. (市场)
fix 56746 :允许安全的WebSocket客户端线程使用当前的上下文类加载器,而不是将其显式设置为加载WebSocket实现的类加载器. 这样,WebSocket客户端连接就可以从Web应用程序内部访问与Web应用程序关联的JNDI资源. (市场)
fix 56905 :使在Web应用程序停止时用于WebSocket连接的线程组的破坏更可靠. (kkolinko /市场)
fix 56907 :如果安全的WebSocket客户端连接失败,请确保客户端IO线程已停止. (市场)
fix 当WebSocket客户端尝试写入关闭的连接时,请以与IOException的处理一致的方式处理所得的IllegalStateException . (市场)
add 添加对permessage-deflate扩展的支持. 当前,这仅限于在服务器端解压缩传入的消息. 预计支持将很快扩展到传出消息和客户端. (市场)
add 扩展了对permessage-deflate扩展的支持,以压缩服务器端的传出消息. (市场)
fix 56982 :返回实际协商的扩展名,而不是Session.getNegotiatedExtensions()的空列表. (市场)
update 更新WebSocket实现以支持Java WebSocket规范版本1.1. (市场)
Web applications
fix 当使用Manager应用程序的expire命令时,按空闲时间更正该会话中会话列表中的标签,该bin表示空闲时间紧挨最大允许的空闲时间. (市场)
update 经过一些额外的测试后,请更新Windows身份验证文档以回答其余问题. (市场)
fix 在Javadoc中更正几个断开的链接. (市场)
Other
add 56788 :通过Windows安装程序包安装时,在已安装应用程序列表中显示完整版本. 亚历山大·卡尼尔(Alexandre Garnier)提供的补丁. (市场)
add 56829 :为用户提供了为_RUNJAVA_RUNJDB环境变量定义自己的值的_RUNJAVA . 在Windows(s / java / java.exe /)上对可执行文件名更加严格. 基于Neeme Praks的补丁. (市场/ kkolinko)
fix 56895 :在catalina.bat正确地编写 JAVA_OPTS ,以便保留转义序列. Lucas Theisen的补丁. (市场)
update 56988 :构建Tomcat时,允许在base.path设置中使用相对路径. (kkolinko)
fix 56990 :确保ide-eclipse构建目标下载默认Eclipse配置文件所需的所有库,并将Eclipse配置为对项目使用Java 6. 添加构建目标ide-eclipse-websocket ,该目标将创建一个单独的链接项目,该项目将使用Java 7编译器编译Tomcat 7的websocket类. (kkolinko)
Tomcat 7.0.55 (violetagg)发行于2014-07-27
Catalina
fix 44312 :如果主机名和别名之间存在冲突,请记录错误. 改进Mapper主机管理方法,以避免偶尔删除错误的主机. 检查是否在主机而非别名上执行了主机管理操作. (kkolinko)
fix 55282 :确保在启动Web应用程序时仅添加一次和同一应用程序侦听器. (紫罗兰色)
add 56461: New failCtxIfServletStartFails attribute on Context and Host configuration to force the context startup to fail if a load-on-startup servlet fails its startup. (slaurent)
add 56526 :改进了StuckThreadDetectionValve ,可以有选择地中断卡住的线程以尝试解除阻塞它们. (流浪汉)
fix 56545 :预加载一个附加类,否则该类的加载可能由Web应用程序触发,当在安全管理器下运行时,Web应用程序又会触发异常. (kkolinko)
fix 56578 :更正了针对56339的修复程序中的回归,该回归可防止会话在使用群集时过期. (市场)
code 56588 :根据Tomcat 8中的更改更新Context.addApplicationListener()方法的弃用.(kkolinko)
fix 56600 :在WebdavServlet:不要浪费了破PROPFIND请求时,生成响应. (kkolinko)
fix 当过滤器或Servlet不支持异步操作时,提供更好的错误消息. Romain Manni-Bucau提供的补丁. (紫罗兰色)
fix 56606tomcat-users.xml文件中的用户条目建议使用"用户名"属性,而不要使用旧版"名称"属性. 修复Windows安装程序示例中的不一致问题. 更新MemoryRealm规则和文档. (市场/ kkolinko)
code 56611 :重构代码以删除对Method.isAnnotationPresent()无效调用. 基于简某的补丁. (市场/ kkolinko)
fix 56653 :修复了在停止上下文时Mapper中上下文列表的并发问题. (kkolinko)
fix 56657: When using parallel deployment, if the same session id matches different versions of a web application, prefer the latest version. Ensure that remapping selects the version that we expect. (kkolinko)
fixMapper执行映射工作之前,请确保映射结果对象为空. (kkolinko)
fix 56658 :避免为上下文及其Servlet映射注册之间的延迟. (kkolinko)
fix 56665 :当元素包含一个空字符串作为值时,更正有效web.xml的生成. (紫罗兰色)
fix 56666 :清除SSO Cookie时,请使用与设置SSO Cookie时相同的域,路径,httpOnly和安全值. (市场)
fix 56677 :确保在跨上下文分派期间HttpServletRequest.getServletContext()返回正确的值. (市场)
fix 56684 :如果等待关闭命令的套接字遇到SocketTimeoutException确保Tomcat不关闭. (市场)
fix 由于调度请求而修改了当前PathInfo时,请确保对HttpServletRequest.getPathTranslated()的调用返回基于修改后的PathInfo的值. (市场)
fix 56698 :当保留空闲会话时,仅保留新的空闲会话. Felix Schumacher提供的补丁. (市场)
fix 56710 :重新加载上下文时,请勿将请求映射到servlet. (kkolinko)
fix 56712 :修复了PersistenceManager会话空闲时间计算. (kkolinko)
fix 56717 :修复了重复启动嵌入式Tomcat期间重复注册MapperListener . (kkolinko)
add 56724 :如果容器后台线程意外中止,则将错误消息写入Tomcat日志. (kkolinko)
Coyote
fix 56518 :使用NIO时,如果线程被标记为中断,请勿尝试写入套接字,因为这将导致连接限制泄漏. 此修复程序基于hanyong对问题的分析. (市场)
fix 56521 :在写操作之间重用异步写缓冲区以减少分配和GC开销. 基于leonzhx的补丁. 当缓冲区仅在随后的写操作中部分写入时,还应使缓冲区的大小可配置,并删除缓冲区内数据的复制. (市场)
fix 更正复制/粘贴错误,并在请求处理的早期阶段发生内部服务器错误时返回500响应而不是400响应. (市场)
code 56582 :在处理器中使用switch(actionCode)而不是" elseif"链. (kkolinko)
fix 修复CVE-2014-0227:对ChunkedInputFilter的各种改进,包括清理,错误消息的i18n以及添加错误标志,以允许错误后的后续尝试快速失败. (市场)
fix 如果请求包含无法识别的Expect标头,则根据RFC2616第14.20章,以错误417(预期失败)响应. (市场)
fix 如果在提交响应后发生错误,请立即关闭连接,而不是尝试完成响应,以使客户端更容易区分完整响应和部分失败响应. (市场)
fix 56620 :暂停NIO HTTP连接器时,避免虚假的访问日志条目,并确保由错误情况生成的访问日志条目使用正确的请求开始时间. (市场)
add 修复CVE-2014-0230:添加了一个新的限制,默认为2MB,以防止Tomcat吞下中止上传的数据量. 该限制可以通过HTTP连接器的maxSwallowSize属性进行配置. (市场)
update 允许通过JMX配置HTTP连接器的maxSwallowSize属性. (kkolinko)
fix 56661 :修复了用于AJP连接器的getLocalAddr() . 只有最新的AJP转发器(如即将发布的mod_jk 1.2.41)才能提供完整的修复程序. (荣)
fix 59451 :对于MessageBytes更正Javadoc. 中村京平提供的补丁. (市场)
Jasper
fix 56334#c15 :修复了带引号的字符串后跟空格时EL分析中的回归问题. (kkolinko /市场)
fix 56543: Update to the Eclipse JDT Compiler 4.4. (violetagg)
fix 56561 :在处理具有空字符串值的属性时,避免NoSuchElementException . (紫罗兰色)
update 56581 :如果已经提交响应时,如果在JSP页面上发生错误,请不要清除JspWriter的缓冲区,而要刷新它. 这将使错误发生的地方更加清楚. (kkolinko)
fix 56612 :在JSP中的UEL表达式中使用时,正确解析两个连续的转义单引号. (市场)
update 将解析JSP模板文本中的EL表达式的代码从Parser移到JspReader类,以提高性能. (kkolinko)
WebSocket
fix 56577 :改进了用于与异步写入关联的回调的执行程序配置. (市场)
Web applications
fix 设置示例Web应用程序创建的cookie的路径,以便它们仅返回到示例应用程序. 如果从安全敏感系统中删除示例Web应用程序的建议被忽略,则这减少了将此类Cookie用于恶意目的的机会. (市场/ kkolinko)
fix 当使用示例Web应用程序中的"请求标头"示例查看HTTP请求标头时,尝试混淆与其他Web应用程序关联的会话Cookie值. 如果忽略从安全敏感系统中删除示例Web应用程序的建议,则可以减少出于恶意目的使用此示例的机会. (市场)
Other
update 将可选的Checkstyle库更新为5.7. (kkolinko)
fix 56685: Add quotes necessary for daemon.sh to work correctly on Solaris. Based on a suggestion by lfuka. (markt)
update 56596 :更新到Tomcat本机库1.1.31版,以提取基于OpenSSL 1.0.1h的Windows二进制文件. (市场)
Tomcat 7.0.54 (violetagg)发行于2014-05-22
Catalina
fix 修复自定义UTF-8解码器,以便总是立即拒绝值0xC1的字节,因为它在UTF-8字节序列中永远无效. 更新UTF-8解码器测试以解决Java 8中对UTF-8解码的改进.由于Java提供的UTF-8解码器中存在错误,因此仍需要自定义UTF-8解码器. Java 8的解码器比Java 7的解码器要好,但仍然存在问题. (市场)
fix 56027 :在AprLifecycleListener中添加了更多用于管理FIPS模式的选项. (舒尔茨/ kkolinko)
fix 56321 :修改WAR后,请先取消部署Web应用程序,然后再删除任何扩展目录,因为取消部署进程可能引用需要从扩展目录加载的类. 如果首先删除了扩展目录,则在取消部署期间加载新类的任何尝试都会失败. (市场)
fix 56339 :如果应用程序从该会话的会话破坏事件中调用session.invalidate() ,则避免无限循环. (市场)
update 56365 :在StandardJarScanner简化文件名模式匹配代码. 配置模式时,请忽略开头和结尾的空格和空字符串. 改善文档. (kkolinko)
fix 56369 :确保删除MBean通知侦听器会还原添加MBean通知侦听器时执行的所有操作. (市场)
add 56382 :有关完成的部署及其执行时间的信息已添加到日志文件中. 补丁由Danila Galimov提供. (紫罗兰色)
add 56383 :用于禁用服务器信息和错误报告的属性已添加到org.apache.catalina.valves.ErrorReportValve . 基于Nick Bunn提供的补丁. (violetagg / kkolinko)
fix 修复CVE-2014-0119:仅在需要时创建XML解析对象,并修复默认Servlet中相关的潜在内存泄漏. 扩展XML工厂,解析器等的内存泄漏保护范围,以涵盖理论上可能发生内存泄漏的其他一些位置. 确保从缓存获取的TLD解析器具有正确的blockExternal值. (市场)
fix 修改通用异常处理,以使StackOverflowError不会被视为致命错误,并且可以根据需要进行处理和/或记录. (市场)
fix 56409 :如果在扫描TLD时遇到名为\的文件,请避免在非Windows系统上使用StackOverflowError . (市场)
add 56430 :扩展对可疑URL模式的检查,以包括*.ab形式的模式,这些形式不是扩展名映射的有效模式. (市场)
fix 56441 :提高在组件属性上调用getter或setter遇到问题时引发的异常的可见性. 日志记录级别从调试提升到警告. (市场)
fix 56451 :使通过上下文别名访问的资源可以通过JNDI进行访问,就像使用标准资源一样. (市场)
add 56463 :用于禁用服务器信息的属性已添加到DefaultServlet . 启用目录列表后,服务器信息将显示在发送给客户端的响应中. (紫罗兰色)
addorg.apache.naming软件包添加到需要在安全管理器下运行时要求代码具有defineClassInPackage权限的软件包. (市场)
addorg.apache.naming.resources软件包添加到需要在安全管理器下运行时要求代码具有accessClassInPackage权限的软件包. (市场)
fix 使容器的命名上下文标记更可靠. 引入新令牌时需要RuntimePermission. (市场/ kkolinko)
fix 56472 :如果启动失败,则允许NamingContextListener在停止时进行清理. (kkolinko)
add 56492 :当Tomcat更新其线程时,请避免在未捕获的异常上使Eclipse调试器暂停. (流浪汉)
fixThreadLocalLeakPreventionListener次要修复. 不要为失败的上下文触发线程更新. 不要忽略threadRenewalDelay设置. 改善文档. (kkolinko)
fix 更正了r797162中引入的回归,该回归在使用JAASMemoryLoginModule时破坏了用户的身份验证. (市场)
fix 56501HttpServletRequest.getContextPath()应该返回用户代理使用的未解码上下文路径. (市场)
fix 56523 :使用SPNEGO身份验证时,请在调试级别(而不是错误级别)记录与失败的用户登录相关的异常. (市场)
fix 56536 :使用SingleSignOn阀时,请确保HttpSessionBindingListener.valueUnbound()使用正确的类加载器. (市场)
Coyote
add 56399 :声明土狼和卡塔琳娜的请求对象均已正确回收. (kkolinko)
fix 56416 :更正了有关AJP和HTTP连接器的套接字延迟默认值的文档. (市场)
Jasper
fix 56334 :修复了55735修复程序引入的反斜杠转义处理中的回归问题. (市场/ kkolinko)
fix 56425: Improve method matching for EL expressions. When looking for matching methods, an exact match between parameter types is preferred followed by an assignable match followed by a coercible match. (markt)
fix 纠正EL分析器中反斜杠转义的处理,不再要求\$\#后面必须加上{ ,以使反斜杠转义生效. (市场)
fix 56529 :在处理自定义标记中具有空字符串值的属性时,避免NoSuchElementException . Hariprasad Manchi提供的补丁. (紫罗兰色)
Cluster
fix 从集群管理器模板中删除集群和ReplicationValve. 这些实例不是模板所必需的. (kfujino)
fix org.apache.catalina.ha.session.BackupManager跨上下文会话复制的支持添加到org.apache.catalina.ha.session.BackupManager . (kfujino)
fix 删除不必要的跨上下文检查. 是否将其他上下文引用的上下文设置为crossContext = true crossContext . 引用不同上下文的上下文必须设置为crossContext = true. (kfujino)
code 移至org.apache.catalina.ha.session.ClusterManagerBase org.apache.catalina.ha.session.BackupManagerorg.apache.catalina.ha.session.DeltaManager通用逻辑. (kfujino)
code 简化oacha.tcp.SimpleTcpCluster的代码. 为了向Container添加或删除群集阀,请使用管道代替IntrospectionUtils . (kfujino)
fix 调用SimpleTcpCluster.unregisterClusterValve时无需设置群集实例. 设置为null而不是群集实例进行清理. (kfujino)
codeAbstractReplicatedMap进行反向移植重构以实现Map而不是扩展ConcurrentHashMap来使Tomcat 7能够使用Java 8构建.
WebSocket
fix 56343 :如果将Tomcat的Java WebSocket 1.0实现与参考实现中的Java WebSocket 1.0 API JAR一起使用,则应避免使用NPE. (市场)
fix 将WebSocket实现用于与异步写入相关联的回调的执行程序的默认最大大小从10增加到200.(标记)
add 如果在停止Web应用程序时无法销毁为WebSocket异步写回创建的线程组,则添加警告. (市场)
fix 确保不再需要创建为支持WebSocket客户端而创建的线程. 对于由Web应用程序启动的WebSocket客户端连接,这将自动发生,但是独立的客户端必须调用WsWebSocketContainer.destroy() . (市场)
fix 56449: When creating a new session, add the message handlers to the session before calling Endpoint.onOpen() so the message handlers are in place should the onOpen() method trigger the sending of any messages. (markt)
fix 56458 :将通过安全连接创建的WebSocket会话报告为安全而不是不安全. (市场)
fix 当不再需要用于安全WebSocket客户端连接的线程时,请停止使用它们,并为它们提供更好的名称,以便在运行时更轻松地进行调试. (市场)
Web applications
fix copyXML Host的copyXML属性的支持添加到Host Manager. (kfujino)
fix 如果在HostManager应用程序中添加主机时未设置" webapps"请求参数,请确保将"名称"请求参数用作主机的应用程序基础. (kfujino)
fix 更正有关Windows服务选项的文档,使其与Apache Commons Daemon文档保持一致. (kkolinko)
update 55215 :改进log4j配置示例. 澄清访问日志记录文档. 基于Brian Burch提供的补丁. (kkolinko)
update 55383Backport改进了Tomcat 8文档中表和代码片段的HTML标记. (kkolinko)
fix 56418 :确保对于失败的Web应用程序部署,Manager Web应用程序不会报告成功. (流浪汉)
fix 修复文档中链接的target和rel属性. 它们在XSLT转换期间丢失了. (kkolinko)
update 改进阀门文档. 将阀分成几组. (kkolinko)
Other
fixservice.bat安装的Tomcat的DisplayName与* .exe安装程序安装的Tomcat的DisplayName对齐. 如果service.bat找不到服务器或客户端jvm,请打印警告. (kkolinko)
update 56363 :更新到Tomcat Native库的1.1.30版. (舒尔茨)
update 更新包将Apache Commons BCEL重命名为r1593495,以获取对Java 7支持的一些其他更改以及一些代码清除. (市场)
add 在测试中:允许配置写入JUnit报告和访问日志的目录. (kkolinko)
Tomcat 7.0.53 (violetagg)发行于2014-03-30
Catalina
add 使它更容易为应用程序中嵌入和/或延长Tomcat的修改javaseClassLoader的属性WebappClassLoader . (市场)
fix 根据54315的报告触发的一些代码分析,提高Web应用程序取消部署的鲁棒性. (市场)
fix 56219 :改进了web.xml文件的合并过程,以考虑合并文件的Servlet版本支持的元素和属性. (市场)
fix 56190 :当对AsyncContext.complete()的调用生效时,应关闭响应(即,不允许进一步输出AsyncContext.complete() . (市场)
fix 56236 :允许Tomcat与替代Servlet和JSP API JAR一起工作,这些Servlet和JSP API JAR打包XML模式的方式例如要求在启用web.xml验证之前依赖JSP API. Tomcat没有这种依赖性. (市场)
fix 56246 :对未知用户进行身份验证时,在MemoryRealm中修复NullPointerException. (市场)
fix 56248 :如果设置了更新标志,则允许部署者更新现有的WAR文件而无需取消部署现有的应用程序. 这允许保留应用程序的任何现有自定义context.xml. 要更新应用程序并删除任何现有的context.xml,只需在部署新版本之前取消部署旧版本的应用程序即可. (市场)
fix 修复CVE-2014-0096:相对于CATALINA_BASE / conf或CATALINA_HOME / conf重新定义DefaultServlet的globalXsltFile初始化参数. 防止DefaultServlet使用的用户提供的XSLT定义外部实体. (市场)
add 添加一种变通方法来验证仅使用文件名来引用它们所基于的JavaEE模式的XML文档(通常是TLD). (市场)
fix 56293 :缓存类加载器从/META-INF/services/加载的资源,以实现更好的性能以进行重复查找. (市场)
Coyote
fix 53119 :如果在关闭连接之前再次写入NIO AJP输出缓冲区,请确保在发生任何错误时清除NIO AJP输出缓冲区,以防止任何可能的溢出. 这会将APR /本机输出缓冲区的原始修补程序扩展到NIO连接器. (kkolinko)
fix 56172 :避免在使用AJP NIO连接器并且使用多个AJP消息发送请求时可能导致请求损坏. 由Amund Elstad提供的补丁. (市场)
fix 56213 :当NIO连接器承受重负载时,减少垃圾收集. (市场)
fix 修复CVE-2014-0075:改进了分块标头对卡盘大小的处理. 避免溢出,并使用位移而不是乘法,因为它快一点. (市场/ kkolinko)
fix 修复CVE-2014-0099:修复了从字节数组中解析长值时可能发生的溢出. (市场)
Jasper
fix 54475 :将Java 8支持添加到JSP的SMAP生成中. Robbie Gibson修补程序. (市场)
fix 55483 :改进表达式语言实现中重载方法和构造函数的处理. (市场)
fix 56208: Restore the validateXml option to Jasper that was previously renamed validateTld. Both options are now supported. validateXml controls the validation of web.xml files when Jasper parses them and validateTld controls the validation of *.tld files when Jasper parses them. (markt)
fix 56223 :如果在初始化ServletContext之后调用ServletContext.setInitParameter() ,则引发IllegalStateException . (市场)
fix 56265 :请勿转义包含EL表达式的动态标签属性的值. (kkolinko)
fix 由于Tomcat 7最低要求Java 6,因此请为JSP Java 6设置默认的编译器源版本和目标版本. (市场)
update 56283: Update to the Eclipse JDT Compiler P20140317-1600 which adds support for Java 8 syntax to JSPs. Add support for value "1.8" for the compilerSourceVM and compilerTargetVM options. (markt)
WebSocket
fix 当一个线程正在关闭连接而另一个线程试图向其写入时,避免可能的死锁. (市场)
fix 如果在关闭会话时抛出异常并调用onClose,则调用onError. (雷姆)
Web applications
code 在文档中:添加对Tomcat 8中多个文档标签的支持,例如<version-major/> . (kkolinko)
add 56093 :将SSL Valve添加到文档Web应用程序. (市场)
fix 56217 :通过对Manager应用程序状态页面上包含请求信息的表格单元格使用左对齐来提高可读性. (市场)
fix Fixed java.lang.NegativeArraySizeException when using "Expire sessions" command in the manager web application on a context where the session timeout is disabled. (kfujino)
fix LAST_ACCESS_AT_START系统属性的支持添加到Manager Web应用程序. (kfujino)
fix 添加org.apache.catalina.ant.FindLeaksTask定义. (kfujino)
fix 56273 :如果Manager Web应用程序由于已经在服务该Web应用程序而未执行操作,请报告错误而不是报告成功. (市场)
fix 56304 :在文档中添加有关在生产环境中不将WebSocket与BIO HTTP一起使用的注释. (市场)
Other
fix 56143 :改进service.bat以便可以从非UAC控制台启动它. 这包括使用一次对tomcat7.exe调用来安装Windows服务,而不是三个调用,以及使用命令行参数而不是环境变量来传递设置. (市场/ kkolinko)
fix 修复7.0.52中的回归:使用service.bat install安装服务时,--StdOutput,--StdError选项的值将传递为空白,而不是" auto". (kkolinko)
fixservice.batexe Windows安装程序之间对齐选项. 对于service.bat ,更改位于--Classpath,-DisplayName,-StartPath和--StopPath中. 对于exe安装程序,更改位于--JvmMs和--JvmMx选项中,现在分别为128 Mb和256 Mb,而不是为空. 卸载Windows服务时,明确指定--LogPath路径,避免使用该选项的默认值. (kkolinko)
code 简化Windows * .bat文件:删除%OS%检查,因为Java 6不能在古老的非NT操作系统上运行. (kkolinko)
fix 56137 :在server.xml的SSL示例中明确使用BIO连接器,因此如果启用了APR,它不会中断. (市场)
fix 56139 :在Windows上运行时,在某些单元测试中避免Web应用程序类加载器泄漏. (市场)
fix 更正构建脚本,以避免使用空软件包构建JAR. (市场)
add 允许将JUnit测试运行限制为许多选定的测试用例方法. (kkolinko)
fix 56189 :从发行版中删除使用过的文件cpappend.bat. (市场)
Tomcat 7.0.52 (violetagg)发行于2014-02-17
Catalina
fix 为所有受支持的web.xml版本的Web应用程序的有效web.xml生成有效的根元素. (市场)
Coyote
codeSocketWrapper AbstractProcessor . (市场)
fix 在某些情况下,异步请求可能会超时. (市场)
Tomcat 7.0.51 (violetagg)未发布
Catalina
fix 55287 :在容器中定义的ServletContainerInitializer可能找不到. (市场/ jboynes)
fix 55855 :提供每个上下文选项(containerSciFilter)以排除容器SCI. (市场)
fix 55937 :在部署应用程序时,将/ROOT的上下文路径视为/ . (市场)
fix 55943 :改进了类加载器检查的实现,该检查防止Web应用程序尝试覆盖J2SE实现类. 作为此修复程序的一部分,重构处理null父类加载器的方式,该方法可以删除许多null检查和对象创建调用. 请注意,此更改意味着默认情况下,Web应用程序类加载器现在比系统类加载器具有更高的优先级来加载类. (市场)
fix 55958 :区分foo.war WAR文件和foo.war的目录. (市场)
fix 55960 :改进单点登录(SSO)单元测试. Brian Burch提供的补丁. (市场)
fix 55974 :在解析XML配置文件时报告错误和警告时,保留顺序. (市场)
fix 56013 :修复了使用IBM JRE时SPNEGO身份验证的问题. IBM JRE仅了解Kerberos凭证的无限生存期选项. 基于Arunav Sanyal提供的补丁. (市场)
fix 56016 :在加载用于XML模式验证的资源时,要考虑到servlet-api.jar和jsp-api.jar可能无法由同一类加载器加载的可能性. Juan Carlos Estibariz修补程序. (市场)
fix 56025 :创建WebSocket连接时,请始终调用ServerEndpointConfig.Configurator.getNegotiatedSubprotocol()并始终在调用ServerEndpointConfig.Configurator.modifyHandshake()之后创建EndPoint实例. (市场)
fix 56032 :确保在发送WebSocket消息时出现IO错误或中断后,WebSocket连接已关闭. (市场)
fix 56042 :如果异步模式下的请求有错误但已被分派,请不要在ErrorReportValve中生成错误页面,以便分派目标可以处理它. (市场)
fix 将缺少的javax.annotation.sql.*类添加到annotations-api.jar. (市场)
fix Context MBean的logger属性的类型应该不是org.apache.commons.logging.Log而是org.apache.juli.logging.Log . (kfujino)
fix 56082 :修复了JULI的LogManager实现中的并发性错误. (市场)
fix 56096 :当指定了JMX远程生命周期监听器的rmiBindAddress属性rmiBindAddress ,将在构造JMX API连接器服务器的地址时使用它的值. 补丁程序由Jim Talbut提供. (紫罗兰色)
fix 如果在Web部署描述符中定义了具有相同名称的环境条目并带有注释,则Web部署描述符中指定的环境条目具有优先权. (紫罗兰色)
fix 更改Context的xmlBlockExternal属性的默认值. 现在是true . (kkolinko)
Coyote
fix 如果指定的内容类型没有字符集,则避免使用可能的NPE. (市场)
fix 55956 :通过请求属性将转发的远程IP地址提供给连接器. (市场)
fix 55976 :修复了对HTTP NIO连接器的sendfile支持. (市场)
fix 55996 :使用NIO HTTP连接器时,请确保异步请求正确超时. (市场)
add 56021 :可以将带有BIO和NIO连接器的Windows-MY密钥存储区用于SSL配置. 它需要在连接器上设置keystoreFile="" keystoreType="Windows-My" . 基于Asanka提供的补丁. (市场)
Jasper
fix 更正XML重构中的回归,该回归意味着吞噬了TLD文件中的错误. (市场)
fix 55671 :更正日志消息中的拼写错误,以获取JspServlet的genStringAsCharArray init-param值错误. 在Tomcat 6中,此参数的名称不同.(kkolinko)
fix 55973 :在Jasper中启用验证时,修复了XML模式的处理. (kkolinko)
fix 56010: Don't throw an IllegalArgumentException when JspFactory.getPageContext is used with JspWriter.DEFAULT_BUFFER. Based on a patch by Eugene Chung. (markt)
fix 56012 :使用page指令的extends属性时,如果类位于未命名的包中,则不要导入该超类,因为从未命名的包中导入现在已明确地非法. (市场)
fix 56029 :针对55198的修复程序中的回归表示当在属性中使用包含三元表达式的EL时,某些表达式将发生编译错误. (市场)
fix 更正jspxml Schema和DTD中的几个错误. (kkolinko)
fix 更改JspC任务的blockExternal属性的默认值. 默认值为true . 当JspC作为独立应用程序运行时,添加对-no-blockExternal开关的支持. (kkolinko)
Cluster
code 简化oacha.tcp.SimpleTcpCluster.createManager(String)的代码. 删除不必要的类强制转换. (kfujino)
WebSocket
fix 当未请求任何子协议或无法达成任何子协议时,请不要为Sec-WebSocket-Protocol HTTP标头返回空字符串,因为RFC6455要求在这种情况下不返回Sec-WebSocket-Protocol标头. (市场)
Web applications
fix 将index.xhtml添加到示例Web应用程序的欢迎文件列表中. (kkolinko)
fix 澄清在读取文档Web应用程序中的请求正文(如果有)时,connectionTimeout也可用作读取超时. (市场)
fix 在文档Web应用程序中阐明连接器的maxConnections属性的行为. (市场)
fix 55888 :更新文档Web应用程序,以使其更清楚地表明容器可以定义不超过一个领域. (市场)
fix 55956 :在可用的情况下,在Manager Web应用程序的状态页上显示转发的可用远程IP地址. (市场)
fix 在ROOT Web应用程序中更正指向Tomcat邮件列表的链接. (kkolinko)
fix In Manager web application improve handling of file upload errors. Display a message instead of error 500 page. Simplify parts handling code, as it is known that Tomcat takes care of them when recycling a request. (kkolinko)
Extras
fix 5516656045 :复制用于打包在JSP-api.jar文件到servlet的api.jar文件,使嵌入式Tomcat实例可以在不碧玉是可用开始验证XML模式. 这也使验证在没有Jasper可用的情况下也可以工作. (市场/ kkolinko)
fix 56039 :启用JmxRemoteLifecycleListener以通过SSL工作. 由esengstrom修补. (市场)
Other
fix 55743 :当禁用了关闭端口并定义了PID文件时,使停止脚本能够工作. 仅在使用catalina.sh平台上可用. (市场)
fix 55986 :当通过kill -9 $CATALINA_PID强制Tomcat停止时, catalina.sh脚本可能错误地报告Tomcat尚未完全停止. 基于jess的补丁. (市场)
fix 将正确的许可证和通知文件与嵌入式JAR打包在一起. (市场)
code 从源文件和文档中删除svn关键字(例如$ Id). (kkolinko)
fix 修复CVE-2014-0050,这是一个带有恶意,格式错误的Content-Type标头和多部分请求处理的拒绝服务. 通过合并Commons FileUpload中的最新代码(r1565163)进行了修复. (市场)
fix 56115 :由于某些用户可能需要更改默认值,因此公开Ant的get任务的httpusecaches属性. 根据安东尼的建议. (市场)
Tomcat 7.0.50 (violetagg)发行于2014-01-08
Catalina
fix 处理将context.xml文件添加到从目录部署的Web应用程序中的情况. 以前,文件被忽略,直到重新启动Tomcat. 现在(假设启用了自动部署),它将触发Web应用程序的重新部署. (市场)
fix 修复HostConfig.setContextClass()字符串比较. (kkolinko)
code 如果没有为当前接收的消息配置任何处理程序,则可以简化WebSocket消息的处理. (市场)
fix 处理WebSocket批注配置的消息大小限制大于Tomcat允许的默认大小的情况. (市场)
fix 55855 :这是一个部分修复程序,如果没有注册WebSocket端点,则绕过相对昂贵的WebSocket升级请求检查. (市场)
fix 55905 :当web.xml引用不存在的taglib文件时,阻止NPE. 提供更好的错误消息. (紫罗兰色)
Coyote
fix 当将BIO连接器与内部执行器一起使用时,请勿显示执行器尚未关闭的警告,因为BIO连接器的默认配置将不等待. 这是因为保持活动连接中的线程无法被中断,因此几乎总是显示警告. (市场)
Jasper
fix JspC使用Servlet上下文初始化参数来传递配置,因此请确保使用的Servlet上下文支持初始化参数. (市场)
Cluster
fix In AbstractReplicatedMap#finalize, remove rpcChannel from channel Listener of group channel before sending MapMessage.MSG_STOP message. This prevents that the node that sent the MapMessage.MSG_STOP by normal shutdown is added to member map again by ping at heartbeat thread in the node that received the MapMessage.MSG_STOP. (kfujino)
fix 将时间戳记添加到GET_ALL_SESSIONS消息中. (kfujino)
Web applications
fix 修复StaticMembershipInterceptor的示例配置,以防止出现警告日志. uniqueId必须为16个字节. (kfujino)
Extras
update 更新用于构建tomcat-juli extras组件的依赖项. Apache Avalon Framework已更新至版本4.1.5,Apache Log4J已更新至版本1.2.17. (荣)
Tomcat 7.0.49 (violetagg)未发布
Catalina
fix 更正新XML本地解析器中的回归,该回归在配置XML验证时触发了错误失败. (市场)
fix 销毁WebSocket连接的HTTP升级处理程序时,请防止NPE. (紫罗兰色)
Tomcat 7.0.48 (violetagg)未发布
Catalina
add 51294 :添加了对将主机的appBase外部的WAR解压缩到appBase中的支持. (市场)
fix 55656 :将Digester配置为在解析server.xml时使用服务器类加载器,而不是加载StandardServer的类加载器. Roberto Benedetti提供的补丁. (市场)
fix 55664 :正确处理使用诸如Encoder.Text<List<String>>类的通用类型的JSR 356 WebSocket编码器,解码器和MessageHandler实现. 包括Niki Dokovski的测试用例. (市场)
fix 正确处理使用通用类型数组的WebSocket EncoderDecoderMessageHandler . (市场)
fix 55681 :确保WebSocket会话可用于MessageHandler方法调用. (市场)
fix 当拒绝JAR文件包含触发器类(例如javax.servlet.Servlet)时,报告了更新的servlet规范版本和文档章节号. (舒尔茨)
add 修改WebSocket握手过程,以便在调用Configurator.modifyHandshake()期间由ServerEndpointConfig公开的用户属性Map对于该连接而言是唯一的,而不是由与端点关联的所有连接共享的. 这允许在modifyHandshake()更容易地配置每个连接的属性. (市场)
fix 55684 :记录警告,但如果内存泄漏检测代码无法访问所有线程以在Web应用程序停止时检查是否存在内存泄漏,则继续. (市场)
fix 在tomcat7-websocket.jar中将web-fragment.xml定义为Servlet 3.0 Web片段,而不是Servlet 3.1 Web片段. (市场)
fix 55715 :将每个Web应用程序执行程序添加到WebSocket实现中,并在当前线程也有可能启动写入操作时,将其用于调用SendHandler.onResult() . (市场)
fix 防止文件描述符泄漏,并确保在配置Web应用程序时关闭文件. (紫罗兰色)
fix 修复了位于tomcat7-websocket.jar!/META-INF/services中的提供程序配置文件的名称,该文件公开了javax.websocket.server.ServerEndpointConfig$Configurator实现的信息. (紫罗兰色)
fix 55760 :删除SpnegoAuthenticator javax.security.auth.useSubjectCredsOnly系统属性的不必要设置,因为除了不必要的设置外, SpnegoAuthenticator导致将SPNEGO与IBM JDK一起使用时出现问题. Arunav Sanyal提供的补丁. (市场)
fix 55772 :确保异步处理期间发生错误后,重新请求和响应. 包括一个基于Todd West提供的代码的测试用例. (市场)
fix 55778: Add an option to the JNDI Realm to control the QOP used for the connection to the LDAP server after authentication when using SPNEGO with delegated credentials. This value is used to set the javax.security.sasl.qop environment property for the LDAP connection. (markt)
fix 55798 :如果MemoryUserDatabase无法找到指定的用户数据库文件,则记录错误. (市场)
fix 55799 :正确实施JSR356中的限制,一次一次最多只能向一条远程WebSocket端点发送一条数据消息. (市场)
fix 当Catalina解析TLD文件时,请始终使用可识别名称空间的解析器来与Jasper解析TLD文件的方式保持一致. 上下文的tldNamespaceAware属性现在被忽略. (市场)
fix 弃用tldNamespaceAware Context属性,因为TLD始终使用可tldNamespaceAware名称空间的解析器进行解析. (市场)
fix 更正一个逻辑错误,该逻辑错误意味着将忽略unpackWAR,并且如果WAR部署失败,则始终会扩展WAR. (市场)
add 添加对基于每个上下文定义copyXML支持. (市场)
fix 定义自动部署的预期行为,并将实现与该定义对齐. (市场)
add When running under a security manager, change the default value of the Host's deployXML attribute to false. (markt)
add 如果主机为deployXML配置的值为falsedeployXML Web应用程序在META-INF/context.xml处具有嵌入式描述符,并且尚未为此应用程序定义显式描述符,请不要启动该应用程序. 这样做的原因是嵌入式描述符可能包含安全操作必需的配置,例如RemoteAddrValve . (市场)
fix 处理HTTP会话结束事件时,请防止WebSocket ServerContainer出现NPE. (市场)
add 55801 :添加了设置自定义SSLContext以便用于客户端wss连接的功能. Maciej Lypik提供的补丁. (市场)
fix 55804 :如果在使用SPNEGO身份验证时缓存的主体的GSSCredential过期,请强制进行重新身份验证. (市场)
add 55811 :如果主web.xml包含一个空的绝对顺序元素,并且未启用web.xml的验证,请跳过对任何web-fragment.xml文件的分析,因为从不使用结果. (市场)
fix 55839 :将对摘要前缀{MD5},{SHA}和{SSHA}的支持扩展到所有领域,而不仅仅是JNDIRealm. (市场)
fix 55842 :请确保如果配置了大于默认的响应缓冲区,则当Servlet通过Writer输出时,将使用完整缓冲区. (市场)
fix 55851 :进一步的修复程序使SPNEGO身份验证能够与IBM JDK一起使用. 基于Arunav Sanyal的补丁. (市场)
add 修复CVE-2013-4590:在上下文中添加一个选项以控制在解析XML配置文件时对XML外部实体的阻止,并在使用安全管理器时默认情况下启用此阻止. 该块是通过自定义解析器实现的,以启用任何被阻止实体的日志记录. (市场)
Coyote
code 对APR /本机处理程序实现一些小的重构,以升级HTTP连接. (市场)
fix 解决了使用APR /本机连接器时通过HTTPS升级的HTTP连接(例如安全WebSocket)导致的意外关闭连接的问题. (市场)
fix 使用非阻塞IO时,请确保在调用ReadListenerWriteListener方法时使用了应用程序类加载器. 不这样做的副作用是,在处理WebSocket事件时JNDI不可用. (市场)
add 配置内部执行程序(如果使用)等待请求处理线程终止之前继续进行连接器停止过程的时间. (市场)
fix 55749 :当在AprLifecycleListener禁用SSLEngine并且为APR /本机连接器配置SSL时,改进错误消息. (市场)
add 如果包含Expect: 100-continue标头的请求收到除2xx响应之外的任何内容,请关闭连接.这样可以防止出现行为异常的客户端(在这种情况下可能不会发送请求正文),而是发送下一个请求. (市场)
fix 改进HTTP请求中尾标的解析. (市场)
Jasper
fix 55735 :修复造成修复的回归55198 . 在处理JSP文档时,作为模板内容的XML元素中的属性应将其文本转义为xml,但是不应转义其中的EL表达式的输出. (市场)
fix 55807 :在为使用该TLD的JSP创建依赖项列表时,JSP编译器对扩展到WEB-INF /类的JAR中的TLD使用了最后修改时间-1,(IDE通常会进行此扩展). 这意味着每次访问都会重新编译使用该TLD的JSP. (市场)
Cluster
add 添加日志消息,说明AbstractReplicatedMap初始化已完成. (kfujino)
fix 为了启用每个应用程序的日志记录, AbstractReplicatedMap日志记录器应为非静态的. 此更改的副作用是在MapMessage#getKey()getValue()抛出RuntimeException而不是Null返回和错误日志. (kfujino)
code 简化DeltaManager#startInternal()的代码. 减少不必要的嵌套以获取集群实例. (kfujino)
fix 从集群管理器模板中删除stateTransferCreateSendTimereceiverQueue不必要属性. 这些属性不应定义为模板. (kfujino)
fix 修复stateTransfered MBean属性定义. 方法名称不是isStateTransfered()而是getStateTransfered() . (kfujino)
fix 更正群集的停止失败日志. 故障的原因不仅是阀门. (kfujino)
fix 在会话同步阶段发送会话阻止时,消除不必要的睡眠. (kfujino)
fix 通过JMX公开org.apache.catalina.ha.session.DeltaManager stateTimestampDrop . (kfujino)
fix 当ping超时时,通过指定已删除的成员来确保未调用memberDisappeared方法. (kfujino)
add 当成员消失时,添加会话重定位的日志消息. (kfujino)
fix 如果ping消息失败,请防止对没有故障成员的普通成员进行错误的超时检测. (kfujino)
Web applications
add 在WebSocket客户端的SSL配置选项上添加一些文档. (市场)
add 在群集文档中添加对notifyLifecycleListenerOnFailureheartbeatBackgroundEnabled的描述. (kfujino)
fix 使用WebSocket 1.0规范和javadoc的信息更新文档. (紫罗兰色)
fix 55703: Clarify the role of the singleton attribute for JNDI resource factories. (markt)
fix 55746 :将有关allRolesMode文档添加到CombinedRealmLockOutRealm . CédricCouralet的补丁. (市场)
add 在文档Web应用程序的"安全方法"部分中,展开与Tomcat一起提供的Web应用程序有关的信息. (市场)
fix 在文档Web应用程序中展开WebSocket缓冲区的描述,以阐明其用途. (市场)
add 更正群集管理器的文档. (kfujino)
add 添加有关在非Windows主机上运行Tomcat时如何配置集成Windows身份验证的信息. (市场)
Extras
update 将commons-logging更新到版本1.1.3. (荣)
Other
add 52323 :运行单元测试时,添加了对Cobertura代码覆盖率工具的支持. 基于mhasko的补丁. (市场/ kkolinko)
update 更新样本Eclipse IDE项目. 明确使用Java 6 SE JDK. 从构建路径中排除JSR356 WebSocket类,因为它们无法使用Java 6进行编译.(kkolinko)
update 将Eclipse编译器更新为4.3.1. (kkolinko /市场)
Tomcat 7.0.47 (violetagg)发行于2013-10-24
Coyote
fix 使用NIO和APR连接器中的旧版WebSocket实现修复回归. (市场)
Web applications
fix 通过CTRL-C停止Tomcat进程时,请避免Windows上Java 6挂起. (市场)
Other
fix 55663 :根据NOTICE文件要求更正了NOTICE文件 . (紫罗兰色)
Tomcat 7.0.46 (violetagg)未发布
Catalina
fix 如果客户端尚未从服务器接收到关闭控制消息,则仅在IOException上发送WebSocket关闭消息,因为IOException可能是响应服务器在发送关闭控制消息后客户端继续发送消息. (市场)
fix 49134 :确保在销毁CombinedRealm时正确销毁了嵌套领域. 这确保了关联的MBean被注销. (市场)
Coyote
code 重构APR /本机连接器以减小localAddList的范围. (市场)
fix 55602: Ensure that sockets removed from the Poller and then closed in the APR/native connector are removed and then closed in a thread-safe manner. (markt)
fix 将APR /本机连接器更新为1.1.29版. (紫罗兰色)
Jasper
fix 55642 :更正了JSP解析器中的逻辑错误,该错误将jsp:param元素值中的EL表达式错误地标识为文字字符串. (市场)
Cluster
add 添加支持以通知群集的定期事件. (kfujino)
Web applications
fix 更正org.apache.catalina.Lifecycle的javadoc. (kfujino)
addorg.apache.catalina.ha.session.JvmRouteBinderValve为sessionIdAttribute属性添加文档. (kfujino)
fix 处理JSR356 WebSocket示例中用户在玩蛇游戏时关闭浏览器的情况. (市场)
fix 确保Javadoc注释与org.apache.tomcat.jni.Poll的正确元素相关联. (市场)
add 扩展上下文文档以使用sessionCookiePath="/"使会话固定保护的含义更加清楚. (市场)
fix 55629 :确保在销毁阶段中删除了在servlet org.apache.catalina.manager.StatusManagerServlet初始化期间添加的JMX通知侦听器. (紫罗兰色)
fix 请更正"应用程序开发人员指南"中有关部署组织的文档. (紫罗兰色)
add 55639 :添加一个Drawboard WebSocket示例. (kpreisser)
Tomcat 7.0.45 (violetagg)未发布
Catalina
add 55576 :保留通过Servlet API访问请求参数时接收请求参数的顺序. (市场)
Cluster
fix 集群会话管理器的日志记录器实例更改为非静态的,以便启用每个应用程序的日志记录. (kfujino)
Tomcat 7.0.44 (violetagg)未发布
Jasper
fix 55582 :更正了并发问题,该问题可能导致为Sheldon Shao提供的一个标记Patch创建两个JspServletWrapper实例. (市场)
Tomcat 7.0.43 (violetagg)未发布
Catalina
add 51526oacatalina.startup.Tomcat#addWebapp方法现在可在提供的路径中可用时处理Web应用程序的META-INF/context.xml . (紫罗兰色)
fix 55186 :确保在请求之间回收本地名称,以便IP虚拟主机正常工作. (市场)
fix 55210 :当此文件包含注释和多个SCI时,请更正对资源目录META-INF/services javax.servlet.ServletContainerInitializer的提供程序配置文件的处理. 尼克·威廉姆斯提供的补丁. (紫罗兰色)
fix 55230 :为ProxyDirContext服务的资源获取InputStream时,请使用正确的资源路径. (市场)
fix 确保JAR扫描过程扫描Apache Log4j版本2 JAR. 尼克·威廉姆斯提供的补丁. (市场)
fix 55261 :修复了在具有大型网络缓冲区的平台/ JVM组合上运行时,无法进行文件上传检查的单元测试. (市场)
fix 55268 :添加了可选的--service-start-wait-time命令行选项,以将服务启动等待时间从默认的10秒更改为.
fix HostConfigcontextClass属性是指Host的contextClass属性的值. (kfujino)
fix 55331 :从AsyncListener.onTimeout()调度到异步servlet不应触发IllegalStateException . (市场)
fix 55333 :更正了55071的修订中的回归. (市场)
fix 使用安全管理器时,请确保通过AccessController.doPrivileged块路由的ServletContext调用不会导致对ServletContext上其他基础方法的调用. (市场)
fix 55354 :将"原则"与用户名相关联后,确保恢复命名上下文环境参数. 基于Richard Begg提供的补丁. (紫罗兰色)
fix 55357 :确保在会话反序列化期间将Web应用程序类加载器设置为线程上下文类加载器. (紫罗兰色)
fix 55404: Log warnings about using security roles in web.xml without defining them as warnings. (markt)
fix 55439 :如果已经停止了Tomcat,则在使用stop -force时不要尝试强制停止. 清除PID文件后,这可以避免出现错误消息. 如果需要强制停止,请改进对可以读取或写入但不能删除PID文件的情况的处理. (市场)
fix 55454 :解析错误的内容类型时,请避免使用NPE. (紫罗兰色)
update 从Tomcat 8向后移植JSR-356 Java WebSocket 1.0实现.请注意,使用此功能需要Java7.(标记)
update 不赞成使用Tomcat专有的WebSocket API,而采用新的JSR-356实现. (市场)
fix 55494 :将日志消息的严重性从警告降低为有关JNDI Realm连接问题的信息,在该问题中,JNDI Realm会自动重失败的操作. 在日志消息中明确说明该操作正在重试. (市场)
fix 更正JdkLoggerFormatter几种错误格式. (kfujino)
fix 55521 :确保在会话无效之前,对HttpSession.invalidate()调用不会返回. 还要确保对会话有效性的检查返回的结果与之前对HttpSession.invalidate()调用一致. (市场)
fix 55524 :使用Tomcat专有(和不建议使用)的WebSocket API时,应进行重构以避免在输出期间处理IOException时可能出现的死锁. (市场)
fix 已加载的属性在PersistentManager永远不存在. isLoaded被定义为mbeans-descriptor中的操作. (kfujino)
add 当设置系统属性org.apache.juli.ClassLoaderLogManager.debug=true时,添加了logging.properties位置的日志记录.
fix 55570 :在SPNEGO身份验证器中正确记录所有错误情况的异常. (市场)
Coyote
fix 55228 :允许Web应用程序设置HTTP日期标头. (市场)
add 通过JMX公开每个协议处理程序的当前连接数. (市场)
fix 55267 :如果应用程序为Comet连接配置了超时,请确保仅将其用于读取和写入操作. 这样可以防止发生错误后长时间超时延迟与Comet连接关联的套接字的关闭. (市场)
fix 使用HTTP或AJP NIO连接器时,请确保未吞下java.lang.VirtualMachineError . (市场)
fix 55399 :使用响应语言环境选择HTTP响应中用于状态消息的语言. (市场)
update 重构连接器以支持新的JSR-356 Java WebSocket 1.0实现. 最明显的变化是AJP APR / native和HTTP APR / native连接器不再支持多个轮询线程. 现在,两个连接器都使用单个轮询线程. (市场)
fix 在内部,内容长度管理为long . 在AJP连接器中的几个限制为int位置上进行修复. (市场)
fix 55453: Ensure that the AJP connector does not permit response bodies to be included for responses with status codes and/or request methods that are not permitted to have a response body. (markt)
fix 55500 :使用AJP NIO连接器时,请不要忽略异步上下文超时的值. (市场)
fix 修复CVE-2013-4286:内容长度标头更好地遵循RFC2616. (市场)
fix 修复CVE-2013-4322:添加了对使用分块编码时限制分块扩展大小的支持. (市场)
fix 将APR /本机连接器更新到版本1.1.28. 将其设为最低可接受版本,因为使用APR /本机HTTP连接器时,JSR-356 WebSocket实现的正确行为取决于1.1.28版本中的错误修复. (市场)
Jasper
fix 55198 :确保在输出中正确引用包含EL和带引号的XML字符的tagx文件中的属性值. (市场)
fix 确保当提供的类为null时, javax.el.ELContext.getContext(Class)将引发NullPointerException . (紫罗兰色)
fix 确保将使用正确的shortDescription空字符串和命名属性ELResolver.RESOLVABLE_AT_DESIGN_TIME -true创建由javax.el.MapELResolver.getFeatureDescriptors(ELContext,Object)返回的FeatureDescriptor对象. (紫罗兰色)
fix 确保将使用正确的shortDescription空字符串创建由javax.el.ResourceBundleELResolver.getFeatureDescriptors(ELContext,Object)返回的FeatureDescriptor对象. 如果基础对象是ResourceBundle的实例,则javax.el.ResourceBundleELResolver.isReadOnly(ELContext,Object,Object)返回true. (紫罗兰色)
fix 55207 :强制执行以下限制:<jsp:text>元素不得包含任何名称空间中的任何子元素. Jeremy Boynes提供的补丁. (市场)
fix 确保javax.el.ListELResolver.getFeatureDescriptors(ELContext,Object)始终返回null. 当无法将属性强制转换为整数时javax.el.ListELResolver.isReadOnly(ELContext,Object,Object)将返回结果. (紫罗兰色)
fix 确保javax.el.ArrayELResolver.getFeatureDescriptors(ELContext,Object)始终返回null. 当无法将属性强制转换为整数时, javax.el.ArrayELResolver.isReadOnly(ELContext,Object,Object)javax.el.ArrayELResolver.getType(ELContext,Object,Object)将返回结果. (紫罗兰色)
fix 55309 :修复了JSP编译和标签插件管理器的并发问题. Sheldon Shao提供的补丁. (市场)
fix 确保当提供的上下文为null时, javax.el.BeanELResolver.getFeatureDescriptors(ELContext,Object)javax.el.BeanELResolver.getCommonPropertyType(ELContext,Object)不会引发NullPointerException . (紫罗兰色)
Cluster
add 添加新属性TerminateOnStartFailure. 如果您希望在复制映射启动失败时终止复制映射,请设置为true. 如果复制映射终止,则关联的上下文将无法启动. 如果将此属性设置为false,则复制映射不会结束. 它将尝试在心跳中加入地图成员. 默认值为false. (kfujino)
fix 发送心跳时避免ConcurrentModificationException. (kfujino)
fix 通道启动失败时,请避免使用NPE. (kfujino)
fix 55301 :修复了通过简单测试针对McastService引发的IllegalArgumentException的问题. (kfujino)
fix 55332 :修复NPE在FileMessageFactory.main时指定空文件作为参数. (kfujino)
fix MessageDispatch15Interceptor更确定的线程名称. (kfujino)
Web applications
update 从AJP NIO连接器文档中删除实验标签. (市场)
fix 正确地将默认资源包与英语语言环境相关联,以便在法语,西班牙语或日语之前指定英语的接受语言的请求将获得他们所要求的英语消息. (市场)
fix 55469: Fixed tags that were not properly closed. Based on a patch provided by Larry Shatzer, jr. (violetagg)
update 示例Web应用程序中的WebSocket示例已更改为使用新的JSR-356 Java WebSocket 1.0实现. (市场)
addorg.apache.catalina.tribes.group.GroupChannel添加文档. (kfujino)
fix Tomcat文档的"正确领域组件"页面. (紫罗兰色)
jdbc-pool
fix 54693 :添加validationQueryTimeout属性. Daniel Mikusa提供的补丁. (kfujino)
fix 54693#c6 :避免由createConnection()方法引起的NPE返回null. Daniel Mikusa提供的补丁. (kfujino)
fix 55342 :删除不必要的中断标志复位. 如果抛出InterruptedException ,则中断标志已被清除. (kfujino)
fix 55343 :添加标志可在初始化池时忽略连接创建的异常. (kfujino)
fix 将未定义的属性和操作添加到mbeans-descriptor. (kfujino)
Other
add 45428 :如果Tomcat无法及时停止以帮助诊断,则触发写入标准输出的线程转储. 仅在使用catalina.sh平台上可用. (市场)
fix 55204 :在Servlet 2.4测试Web应用程序中使用的正确名称空间. Jeremy Boynes提供的补丁. (市场)
fix 55205 :对元素进行重新排序,使web.xml符合Servlet 3.0测试Web应用程序的架构. Jeremy Boynes提供的补丁. (市场)
fix 55211 :在测试Web应用程序中使用的TLD文件中的正确名称空间. 将元素tagclass重命名为tag-class以便TLD文件符合DTD / schema. Jeremy Boynes提供的补丁. (紫罗兰色)
update 将程序包重命名的Commons BCEL版本更新为Commons BCEL中继中的最新代码. (市场)
update 将Commons FileUpload的程序包重命名版本更新为Commons FileUpload中继的最新代码. (市场)
fix 55297 :在查找jsvc可执行文件时,如果未设置显式路径并且在$ CATALINA_BASE中找不到该路径,则也请在$ CATALINA_HOME中查找. (市场)
fix 55336 :正确地转义在catalina.sh脚本中传递给eval的参数,以确保将Tomcat安装在包含多个连续空格的路径上时启动. (市场)
Tomcat 7.0.42 (markt)发行于2013-07-05
Catalina
fix 强制执行Servlet 3.0规范第4.4节中描述的限制,该限制要求新的可插入性方法仅可用于以指定方式之一定义的ServletContextListener . (市场)
fix 当以未经身份验证的用户身份请求资源时,更好地处理FORM身份验证,该资源仅受不包含GET的HTTP方法子集的保护. (市场)
fix 53777 :添加了对JAAS Realm实例的支持,以使用专用配置而不是JVM全局JAAS配置. 这对于每个Web应用程序JAAS Realms很有用. 基于eolivelli的补丁. (市场)
fix 54745 :修复了通过Java Web Start部署Tomcat时JAR文件扫描的问题. 尼克·威廉姆斯提供的补丁. (市场)
add 55017 :添加了使用JMX远程生命周期侦听器时配置RMI绑定地址的功能. Alexey Noskov提供的补丁. (市场)
fix 55071 :如果JDBC Realm无法读取用户的凭据,请确保报告了原始异常. (市场)
fix 550735510855109551105515855159 :小的性能提升. Adrian Nistor提供的补丁. (markt / violetagg)
add 55102: Add support for time to first byte in the AccessLogValve. Patch provided by Jeremy Boynes. (markt)
fix 55125 :如果服务器容器无法启动,请不要启动Catalina包装器(用于从命令行运行和作为服务运行时使用),因为Tomcat无法执行任何有用的工作. (市场)
fix 更新JreMemoryLeakPreventionListener以考虑Java 7中java.beans.Introspector.flushCaches()sun.awt.AppContext.getAppContext()的行为变化.
fix 避免在Tomcat关闭时发出Users:type=UserDatabase,database=UserDatabase警告日志消息. (佩罗)
fix 在异步周期中调用异步调度时应避免ClassCastException ,该异步调度是通过调用ServletRequest.startAsync(ServletRequest,ServletResponse) ,其中ServletRequest / ServletResponse是自定义实现. (紫罗兰色)
fix 纠正在7.0.39中引入的回归(基于base 64的编码和解码的重构),该回归在设置userPassword并用MD5或SHA1哈希密码时破坏了JNDI领域. (市场/ kkolinko)
fixAsyncContext.dispatch()更正路径计算的机制. (紫罗兰色)
fix 55155 :在OSX上的Java 6下运行Tomcat单元测试时,避免持续抓焦点. 凯西·卢卡斯(Casey Lucas)提供的补丁. (市场)
fix 55160 :使用HTTP NIO连接器时,请不要忽略connectionUploadTimeout设置. (市场)
fix 55176 :正确处理包含等号字符的SSI表达式中的正则表达式. (市场)
Coyote
fix 55177 :正确处理BIO HTTP连接器的infinite soTimeout. 基于Nick Bunn的补丁. (市场)
fix 55180 :当正确处理无限soTimeout disableUploadTimeout设置为false. 尼克·邦恩(Nick Bunn)提供的补丁. (紫罗兰色)
Cluster
fix 删除无效的FileMessageFactory时,从tempDir中删除剩余的war文件. (kfujino)
fixkeepAliveCount / keepAliveTime设置为大于0的值时,请确保NioSender的keepAlive正常工作.(kfujino)
add 添加成员无法加入集群时的日志记录. (kfujino)
fix 将Tribes的TaskQueue替换为执行者的workQueue,以确保执行者的maxThread正常工作. (kfujino)
fix 54086 :修复了其他代码路径,该路径可能导致多个线程尝试修改同一选择器键集. (市场)
Web applications
add 完成MessageDispatch15Interceptor的文档. (kfujino)
add 53655 :记录在什么情况下Tomcat将向通过JNDI资源创建的邮件会话添加javax.mail.Authenticator . (市场)
fix 55179 :更正远程IP阀门的Javadoc,以便使用正确的名称来引用proxiesHeader属性. (市场)
jdbc-pool
fix 55031 :修复了Export-Package标头,并在MANIFEST.MF中uses伪指令. 在Import-Package标头中将org.apache.juli.logging包的版本更改为" 0". 因此,可以使用该软件包的任何版本. Martin Lichtin提供的补丁. (紫罗兰色)
Other
update 用于在构建时下载依赖项的更新Maven Central位置为repo.maven.apache.org . (kkolinko)
update 将JUnit更新到版本4.11. 为Hamcrest 1.3核心库配置单独的下载,因为junit.jar中不再包含其类. (kkolinko)
fix 54013 :使用强制停止时,请等待一小段时间(5s),使过程终止,然后再返回. mukarram.baig提供的补丁. (市场)
fix 55119 :确保构建过程生成的Javadoc不易受CVE-2013-1571的攻击. 基于Uwe Schindler的补丁. (市场)
Tomcat 7.0.41 (markt)发行于2013-06-10
Catalina
fix 54703 :解析HTTP Content-Type标头,以容忍出现在应用程序传递的值中的任何CR或LF字符. 还要解决其他测试用例确定的一些空白解析问题. (市场)
fix 从未扩展的WAR文件读取context.xml文件时,防止可能的WAR文件锁定. 请注意,在正常使用情况下, JreMemoryLeakPreventionListener可以防止这种情况. (市场)
fix 确保为主机运行自动部署时,它将对copyXML,deployXML和unpackWARs使用最新值. (市场)
fix 54939 :当HTTP标头解析失败(例如,超过maxHeaderCount)时,提供日志记录(使用UserDataHelper). (市场)
add 54944 :增强了FORM身份验证的单元测试. Brian Burch提供的补丁. (市场)
fix 54955 :在执行应用程序的重新加载时,请确保对上下文根的后续请求不会导致404响应. (紫罗兰色)
fix 54971 :通过javax.servlet.http.Part.write(String)写入文件时,请确保使用正确的位置. (市场)
fix 54974 :如果从其获取此SessionCookieConfigServletContext已被初始化,请确保SessionCookieConfig#set<methods>将引发IllegalStateException . (紫罗兰色)
fix 54981 :确保当web.xml / web-fragment.xml没有提供jsp配置时, ServletContext#getJspConfigDescriptor()将返回null . (紫罗兰色)
fix 确保使用Tomcat的反资源锁定功能时,在Web应用程序停止时,将删除该Web应用程序的临时副本,而不是原始副本. (市场)
fix 54984 :即使未解析请求参数,在处理作为多部分/表单数据发布的表单数据时,也应使用正确的编码. (紫罗兰色)
fix 54999 :使用SSO且单个请求中发生logout()和login()时,需要删除旧的JSESSIONIDSSO. 由Keith Mashinter提供的补丁. (市场)
add 55035 :将对版本属性的支持添加到Ant任务的deploy命令中,以与基于文本的Manager应用程序接口. Sergey Tcherednichenko提供的补丁. (市场)
add 55046 :添加一个实现CORS的Servlet过滤器. Mohit Soni提供的补丁. (市场)
add 55052 :如果找不到带有前缀的属性,那么JULI的LogManager现在还会查找不带前缀的日志记录属性. (市场)
fix 确保仅执行给定异步周期的第一个异步调度操作. 同一异步周期的所有后续异步调度操作都将被忽略,并IllegalStateException . (紫罗兰色)
Coyote
fix 54947 :修复了如果终止请求行的CRLF被拆分为多个数据包,则HTTP NIO连接器会错误地拒绝请求. KonstantinPreißer的补丁. (市场)
Jasper
fix 54964 :允许将标签插件与Web应用程序打包在一起. Sheldon Shao提供的补丁. (市场)
fix 54968 :在调用javax.servlet.jsp.JspEngineInfo#getSpecificationVersion()时,返回JSP引擎支持的JSP规范的正确版本号(2.2). (紫罗兰色)
Cluster
add 添加maxValidTime属性以防止FileMessageFactoryFarmWarDeployer泄漏. (kfujino)
code 简化ReplicationValve的代码:使用实例变量,而不是从每个请求的容器中获取群集实例. (kfujino)
add 添加maxWait属性,当没有可用的发件人时,senderPool将等待. (kfujino)
add 如果未能检索到数据发送者,则通过包括指定的超时来改进错误消息. (kfujino)
add 添加removeSuspectsTimeout属性以删除TcpFailureDetector中的可疑节点. (kfujino)
Web applications
fix 54931 :将有关安装和运行多个实例的信息添加到Window Service方法中. 基于Chris Derham的补丁. (市场)
fix 54932 :更正指向部落文档的链接. (紫罗兰色)
add Add document for o.a.c.tribes.group.interceptors.TcpFailureDetector. (kfujino)
Tomcat 7.0.40 (markt)发行日期2013-05-09
Catalina
update 将Tomcat的Commons FileUpload内部副本更新为FileUpload 1.3. (市场)
fix 54178 ,CVE-2013-2071:防止AsyncListener实现对事件做出响应而抛出RuntimeException . (市场)
fix 54791 :还原jarsToSkip属性中的tools.jar条目,以防止从Eclipse运行Tomcat时出现警告. (市场)
fix 54851 :在扫描Web片段时,没有任何web-fragment.xml的目录不应影响可分发元素的状态. Trask Stalnaker提供的补丁. (紫罗兰色)
fix 在发送WebSocket消息的过程中发生错误时,请通知入站(发生应用程序做出响应的所有事件),该错误已经发生并且正在关闭连接. (市场)
fix 54906 :如果在Web应用程序停止时检查内存泄漏时发生ConcurrentModificationException则会出现更好的错误消息. 还要确保该异常不会导致跳过剩余检查. 基于NateC的补丁.
fix 允许204响应(无内容)包括RFC2616所要求的实体标头. (市场)
Coyote
fix 在将HTTP升级与APR / native连接器一起使用时,请确保写入错误导致IOException而不是错误地将错误吞没. (市场)
Jasper
fix 54802 :提供有关JspDocumentParser引发的异常的位置信息. (kkolinko)
fix 54801 :请勿尝试在JSP文档中的scriptlet中解析看起来像EL表达式的文本,因为scriptlet中不允许EL表达式. (kkolinko /市场)
fix 54821 :如果禁用了EL表达式,请不要尝试解析JSP文档中看起来像EL表达式的文本. (kkolinko /市场)
fix 54888 :使用ForEach标签插件添加对CSV列表的支持. Sheldon Shao提供的补丁. (市场)
Cluster
fix 为FarmWarDeployer添加了一些改进. (kfujino)
Web applications
fix 54872 :Tomcat文档的"正确的Cluster Receiver"页面. (紫罗兰色)
jdbc-pool
update 文档StatementCache拦截器. (kkolinko)
fix 修复ConnectionPool次线程问题. (市场/ kkolinko)
fix 54732 :修复了StatementCache拦截器中的StatementCache泄漏. (kkolinko)
fix 运行TestSlowQueryReport测试时,修复SlowQueryReportJmx NPE. (kkolinko)
Other
update 更新到Eclipse JDT Compiler 4.2.2. (kkolinko)
update 54890 :更新到Apache Commons Daemon 1.0.15. (土耳其人)
update 将其余的单元测试转换为JUnit 4,并启用Checkstyle规则,该规则禁止使用JUnit 3中的方法.(markt / kkolinko)
fixcatalina.policy文件中删除不需要的权限以读取UserDataHelper属性. 需要这些的类已在7.0.26中移动. (kkolinko)
Tomcat 7.0.39 (markt)发行于2013-03-26
Catalina
fix 确保由于处理ServletContainerInitializer出错而导致Web应用程序启动失败时,生成日志消息. (市场)
fix 当引导类加载器不是Web应用程序类加载器的祖先(例如OSGi环境)的环境中运行时,请阻止JAR扫描中的NPE. (紫罗兰色)
fix 如果对UEncoder#encodeURL进行了调用,请确保正确清理了所有内部结构. (紫罗兰色)
add 54660 :在使用访问日志时,启用对访问日志的fileDateFormat属性的修改. 更改将在对访问日志进行下一个输入时生效. (市场)
update 将Tomcat的Commons FileUpload内部副本更新为FileUpload干线,修订版1458500以及从Commons IO到2.4的关联解压缩. (市场)
fix 54702 :防止文件描述符泄漏,并确保在解析Web应用程序部署描述符时关闭文件. (紫罗兰色)
fix 54707 :进一步放松对DIGEST身份验证标头的解析,以允许有错误的客户端引用不应该引用RFC2617状态的值. (市场/ kkolinko)
fix 通过名称相同但签名不同的多个操作启用对MBean的支持. (市场)
code 弃用Tomcat的内部Base 64编码器/解码器,并切换为使用Commons Codec实现的程序包重命名副本. (市场)
fix 在扫描类加载器层次结构时,请确保StandardJarScanner#scan将使用提供的类加载器. (紫罗兰色)
Coyote
fix 54690 :修复了由先前针对54406的修复引起的回归. 如果未为sslEnabledProtocols或密码指定任何值,请使用服务器套接字的默认值,而不是客户端套接字的默认值. (市场)
Web applications
update 更正Tomcat文档的Deployer,Manager和Context页面. (kkolinko)
jdbc-pool
fix 52318 :导入的软件包org.apache.juli.logging版本已扩展为也包括7.0.x版本. 该修补程序仅在OSGi环境中运行时适用. Martin Lichtin提供的补丁. (紫罗兰色)
fix 54599 :不要在PoolProperties.toString()打印连接密码. 基于Daniel Mikusa的补丁. (kkolinko)
fix 54684 :将javax.naming.spi添加到MANIFEST.MF中的Import-Package头中,以便在OSGi环境中运行时解析ClassNotFoundException . (紫罗兰色)
Other
fix 更新到Apache Commons Daemon 1.0.14以解决54609 ,这意味着Windows服务的安装可能无法生成错误的服务启动命令. (土耳其人)
fix 当请求的资源使用Writer时,确保HEAD请求返回正确的内容长度. 尼克·威廉姆斯的补丁. (市场)
Tomcat 7.0.38 (markt)未发布
Catalina
fix 确保为HTTP NIO连接器正确记录了请求开始时间(由访问日志阀用来计算请求处理时间). 在某些情况下,请求处理时间可能比记录的时间更长. (市场)
update 将JDK 7中的另一个库添加到catalina.properties文件中的jarsToSkip属性的值. (kkolinko)
add 53871 :如果注释扫描由于类依赖关系损坏而导致StackOverflowError ,则将触发异常的类层次结构添加到错误消息中. (市场)
add 向标准JarScanner实现( scanBootstrapClassPath )添加一个新选项,以控制是否扫描引导程序类路径. 默认情况下,将不对其进行扫描. (市场)
update 在webapp MBean中提供更多整合的servlet MBean数据. (荣)
fix 54584 :构建Web应用程序类路径以传递给JSP编译器时,请考虑委托属性. (市场)
fix 从Tomcat 8.0.x复制更新并重新打包的UTF-8解码器,并将此改进的解码器用于WebSocket连接. 删除特定于WebSocket的UTF-8解码器. (市场)
fix 54602 :回收请求之间用于URI的字节到字符转换器,以确保一个请求中的错误不会触发下一个请求中的失败. (市场)
fix 使用新添加的改进的UTF-8解码器来解码UTF-8编码的URI和UTF-8编码的请求主体. 无效的UTF-8 URI不会导致错误,但是在检测到错误时将使用替换字符. 这将允许Web应用程序处理最有可能导致404响应的URI. 如果UTF-8解码失败,则使用utf-8解码的后备功能已被删除. 请求正文中无效的UTF-8序列将触发IOException. 解码器的使用方式也得到了改进. 值得注意的变化是,输入末尾的无效序列现在会触发错误,而不是被静默吞下. (市场)
fix 54624 :确保在还原原始请求之前,在进行FORM身份验证之后吞下请求正文时,请使用正确的请求正文长度,以防止在还原通过AJP提交的POST请求时可能挂起. (市场)
fix 54628 :编写二进制WebSocket消息时,是从数组的起始位置而不是数组的起始位置开始写的. 由blee提供的补丁. (市场)
Coyote
code 使用NIO API重构char编码/解码. (雷姆)
Web applications
fix 54203 :完成javax.servlet.http.Part的Javadoc. (市场)
fix 54638 :当页面以XML呈现时,修复了Manager Web应用程序状态页上的内存池"已用"内存值的显示. (kkolinko)
fix 纠正Tomcat文档" SSL配置"页面上的配置样本中的拼写错误. (kkolinko)
update 在Tomcat文档的Changelog页面上禁用对注释的支持. (kkolinko)
fix 修复Manager Web应用程序中status.xsd模式的几个问题,并根据StatusTransformer类的实际输出对其进行测试. (kkolinko)
fix 澄清有关如何为Web应用程序配置上下文路径的文档. (市场)
Other
update 54601 :将catalina.sh更改为始终使用LOGGING_MANAGER变量来配置日志记录,而不是修改JAVA_OPTS . (kkolinko)
Tomcat 7.0.37 (markt)发行于2013-02-18
Catalina
fix 54521 :确保需要DIGEST身份验证质询的并发请求接收不同的现时值. (市场)
fix 54534 :确保如果对StandardWrapper#isSingleThreadModel()的调用触发了Servlet的加载,则使用正确的类加载器. (市场)
fix 54536 :如果在调用HttpServletResponse#sendError(int, String)时使用了自定义HTTP状态代码,请确保显示默认错误页面. (市场)
Coyote
fix 54456 :确保如果客户端在发送分块的请求正文时中止了请求,则此请求将正确传达给读取请求正文的客户端. (市场)
update 将APR /本地连接器的本地组件更新为1.1.27,并将该版本作为推荐的最低版本. (市场)
Jasper
add 54239 :使Web应用程序能够提供自己的"表达式语言"解释器,以使它们能够优化表达式的处理. 基于Sheldon Shao的补丁. (市场)
Web applications
add 54505 :创建从JNDI How-To到Tomcat特定选项的更清晰链接,以配置JNDI资源. (市场)
Other
update 更新到Apache Commons Daemon 1.0.13. (市场)
Tomcat 7.0.36 (markt)未发布
Catalina
fix Make additional allowances for buggy client implementations of HTTP DIGEST authentication. This is a follow-on to 54060. (markt)
fix 54438 :修复了52953的一个回归问题,该回归问题在使用摘要密码并为该领域中不存在的用户进行身份验证尝试时触发了NPE. (市场)
fix 54448 :正确处理基元上的@Resource批注. Violeta Georgieva提供的补丁. (市场)
fix 54450 :当部分servlet属性使用@Resource ,而另一部分使用injection-target时,可以正确处理资源注入. Violeta Georgieva提供的补丁. (市场)
fix 54458 :在DataSourceRealm中记录错误时包括异常. Violeta Georgieva提供的补丁. (市场)
fix 54483 :更正其中一种西班牙语翻译. 根据adinamita的建议. (市场)
fix 停止或重新加载Web应用程序时,防止SSO注销. 当StandardManager(pathname ="")或DeltaManager正常停止时,上下文中的所有会话都将过期. 在这种情况下,由于大多数会话没有超时,因此触发了SSO注销. (kfujino)
fix 如果context.xml文件的解析失败,请在日志消息中包括异常. (市场/ kkolinko)
fix 54497 :使内存泄漏检测代码更健壮,因此泄漏检测代码中的故障不会阻止Context停止,除非该错误对JVM致命. (市场)
fix 54507 :在Web应用程序完全启动之前,请勿启动用于终止会话的后台线程(除其他外). Web应用程序停止后,立即停止后台线程. (市场)
fix 允许WebSocket Ping / Pong消息在碎片消息的碎片之间发送. (市场)
fix 54612 :在尝试向其写入WebSocket消息之前,请先检查套接字是否已关闭. 另外,在关闭套接字之前,请刷新所有部分缓冲的数据. (市场)
Coyote
fix 54324 :如果OpenSSL支持,则允许APR连接器禁用TLS压缩. (舒尔茨)
fix 54406 :修复了NIO HTTPS连接器,以将指定的cipherssslEnableProtocols选项sslEnableProtocols为SSL实现所支持的那些,并与BIO连接器共享逻辑. 当不支持任何指定的选项时,修改密码和sslEnabledProtocols选项修剪将不以静默方式还原为JVM默认值-新行为是警告并明确启用任何选项. (定时)
fix 将NIO HTTP连接器与其他HTTP连接器对齐,并在确定HTTP标头的大小时包括前导空白行. (市场)
Jasper
fix 53869 :具有大量高度嵌套标签的页面的性能改进. 保留对根JSP上下文的引用,而不是在每次调用时都遍历层次结构. 基于Sheldon Shao建议的补丁. (市场)
fix 54440 :更正了因54240的更改而导致的回归,该回归使使用JspC的JSP编译中断. Sheldon Shao提供的补丁. (市场)
fix 54466 :当无法编译从标记文件生成的java文件时,通过包含文件名来改进错误消息. 基于Sheldon Shao的补丁. (市场)
Cluster
fix 修复counterSend_EVT_SESSION_EXPIREDcounterSend_EVT_CHANGE_SESSION_ID错误增量. 如果集群组中没有活动的成员,则这些值不会增加. (kfujino)
fix 54476 :将GroupChannel发送方法的Javadoc中的错误更正,使制造商清楚目标成员数组的最小长度为1,而不是2. (市场)
fix 在群集环境中正常关闭节点时,防止SSO注销. (kfujino)
fix 在ClusterSingleSignOn中发送复制消息之前,请检查集群成员. (kfujino)
Web applications
fix 54461 :在Jasper操作方法中改进了有关编译器属性的文档. (市场)
add 将Jespa添加到第三方Windows身份验证提供程序列表中,并在文档中将这些提供程序的外部链接设置为" no-follow . (市场)
Tribes
fix 54496 :不要在MemberImpl.toString()使用硬编码的类名. (市场)
Other
update 更新到Apache Commons Daemon 1.0.12. (市场)
Tomcat 7.0.35 (markt)发行于2013-01-16
Catalina
fix 54247 :作为服务运行时,防止ClassNotFoundException停止. (市场)
fix 54249 :当上下文路径包含编码字符(例如空格)时,请确保资源属性可用. 这触发了Jasper中的编译问题. Polina Genova提供的补丁. (市场)
fix 54256 :通过在异常中包含JAR文件的名称来改进JAR文件扩展名验证失败时的错误报告. (市场)
fix 即使过滤器在调用它们的destroy()方法时引发异常,也可以使Web应用程序完全停止运行. (市场/ kkolinko)
fix 修复在使用SecurityManager运行时servlet实例的内存泄漏,并且init()或destroy()方法失败或servlet是SingleThreadModel的情况. (kkolinko)
code SecurityUtil类中的清除方法缓存查找代码. (kkolinko)
add 使Tomcat 7的非JSR356 WebSocket实现在HTTP升级和从客户端到服务器的第一条WebSocket消息之间实现非阻塞(受连接器支持). (市场)
fix 54262 :确保主web.xml文件中的<absolute-ordering />元素为空会禁用对Web片段的扫描. 基于Violeta Georgieva的补丁. (市场)
fix 54284 :根据Servlet EG的说明,不允许使用匿名过滤器和Servlet. Violeta Georgieva的补丁. (市场)
fix 54371 :当上下文路径包含需要在URL(例如空格)中编码的字符时,在处理未扩展的WAR文件的Web片段时防止异常. 基于Polina Genova的补丁. (市场)
add 54372 :使HTTP Digest身份验证标头能够解析已知的错误客户端发送的无效标头. (市场)
fix 54377 :在RemoteIpFilter中正确设置AccessLog的请求属性. Violeta Georgieva的补丁. (市场)
fix 54379 :在web.xml中实现对构造后和破坏前元素的支持. Violeta Georgieva的补丁. (市场)
fix 54380 :不要尝试太早将servlet或上下文注册到映射器中(这只会导致记录警告). (kkolinko)
fix 在启动失败后调用WebappLoader.stopInternal时,修复WebappLoader.stopInternal NPE. (kkolinko)
add 54381 :添加了对接收WebSocket pong消息的支持. (市场)
fix 54382 :修复了启用SSI处理且存在空SSI指令时的NPE. (市场)
fix 解析不正确的HTTP标头时,修复HttpParser ArrayIndexOutOfBoundsException . (kkolinko)
fix 54387 :当多个servlet映射到同一url模式时,部署必须失败. (市场)
fix 54391 :为javax.servlet.context.orderedLibs属性提供一个值. (市场)
Coyote
fix 54248 :使用阅读器读取带有BOM的请求正文时,请确保吞下字节顺序标记,这些编码要求字节顺序标记. (市场)
fix 修复AjpNioProtocol的处理器AjpNioProtocol . 错误的对象被用作连接映射中的键. (kkolinko)
Jasper
add 54240 :添加了对自动检测和配置提供标签插件实现的类路径上的JAR的支持. 基于Sheldon Shao的补丁. (市场)
fix 54241 :还原针对35410的修复程序,因为它不符合JSP规范,特别是必须将<%= obj %>转换为out.print(obj) ,而后者又变成out.write(String.valueOf(obj)) . 如果obj.toString()返回null则将触发NullPointerException . 在这种情况下,针对35410的修复程序错误地禁止了NullPointerException . (市场)
fix 54242 :使用JSTL ForEach标签插件实施中的正确处理空迭代. Sheldon Shao提供的补丁. (市场)
fix 54260 :使用JSP卸载和标记文件时,请避免NullPointerException . (市场)
fix