项目部署到生产服上后,发现一个定时器任务的Bean在指定时间连续执行了两次。加日志调试发现这个Bean被初始化了两次,再进一步添加日志调试发现Web的启动类,也就是AbstractAnnotationConfigDispatcherServletInitializer的子类也被执行了两次。而在开发环境的IDE中测试时,则没有这种现象。于是怀疑是Tomcat的问题,但开发环境与生产环境的版本一致,只有开发环境中对Tomcat对根路径做了修改。
参照:http://www.lxway.com/206659492.htm 提供的方法:
引用
方法1:不配置根路径访问
方法2:将路径已出webapp目录,在docBase中指定路径(可以是相对于webapp的路径,或者绝对路径)【推荐】
方法3:替换ROOT目录【推荐】
方法4:在conf/Catalina/localhost生成ROOT.xml,并加入如下内容:
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="xxx" path="" reloadable="true" />
按方法3,做了调整后,解决问题。
分享到:
相关推荐
SpringMVC URL 与 Controller 方法初始化源码流程 Visio 文档 文档可以直接通过Visio进行编辑,方便二次修改、学习
使用SpringMVC实现国际化的具体步骤和基本原理
03springmvc注解驱动开发的servlet3.0初始化配置类.avi
SpringMVC URL 与 Controller 方法初始化源码流程 Visio 文档 文档可以直接通过Visio进行编辑,方便二次修改、学习
springMVC初始框架模板,可以直接启动tomcat进行测试,也可以作为springMVC学习和开发的起步模板。
主要介绍了SpringMVC源码解读之 HandlerMapping - AbstractDetectingUrlHandlerMapping系列初始化的相关资料,需要的朋友可以参考下
springmvc课堂笔记(两天)
SpringMVC、jQuery国际化配置
NULL 博文链接:https://yuhuiblog695685688425687986842568269.iteye.com/blog/2423933
springMVC项目,项目中使用了从jeesite项目的UI界面,国际化配置,参考了网上的很多资料,再次非常感谢前辈们
SpringMVC两种配置的Demo
SpringMVC入门很简单之格式化显示,具体参考博文:http://www.cnblogs.com/liukemng/tag/SpringMVC/
SpringMVC实现国际化/多语言项目,具体内容参考http://blog.csdn.net/u013360850/article/details/70860144
springmvc是常用的一种框架,学习springmvc非常重要,故需要良好教程资料
使用SpringMVC的验证器需要的四个jar包:classmate-1.4.0.jar,hibernate-validator-6.0.10.Final.jar,jboss-logging-3.3.2.Final.jar,validation-api-2.0.1.Final.jar
看了好多资料后整理的springMVC国际化,内容为亲测可用的eclipse项目,直接import即可。 页面点击后可以切换中文和英文两种国际化信息,可以再追加其他语言。
Spring集成SpringMVC/Mybatis,有初始化脚本
springmvc 实现i18n国际化+freemarker小实例demo 亲测有用
Spring框架系列(13) - SpringMVC实现原理之DispatcherServlet的初始化过程.doc
springMvc上传下载两个jar包,给需要的人,好东西,物美价廉