目前维护的一个系统很是奇怪,必须将servers的publishing选项设置为never publish automatically,否则一登录系统tomcat立马重新加载应用,但是更改设置之后也不爽,对代码作出的修改不能立即生效了。真可谓是不想让你重启吧你非要重启,想让你重启吧还要点击一下publish to the server,令我郁闷之极。
光郁闷不行,得想办法解决啊,于是乎,开始断点调试,我看到底是哪个惹的祸。最后,定位到一块在web根目录下创建目录的操作代码段,只要执行完那句,立马让tomcat重新加载,非常好使。
我暂时想到的办法是,要么把这个目录移到webroot的外部,要么把创建目录改为创建不同名的文件,要么不改了顶多手工重启tomcat吧。
我非常好奇的是,除此之外还有什么别的办法呢,望遇到过此类问题的同路人能够指点迷津。
附上tomcat自动重新加载应用的控制台输出
2009-9-4 14:38:22 org.apache.catalina.core.StandardContext reload
信息: Reloading this Context has started
2009-9-4 14:38:25 org.apache.catalina.loader.WebappClassLoader loadClass
信息: Illegal access: this web application instance has been stopped already. Could not load com.mysql.jdbc.profiler.ProfilerEventHandlerFactory. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1273)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4315)
at com.mysql.jdbc.ConnectionImpl.close(ConnectionImpl.java:1461)
at com.ibatis.common.jdbc.SimpleDataSource.forceCloseAll(SimpleDataSource.java:507)
at com.ibatis.common.jdbc.SimpleDataSource.finalize(SimpleDataSource.java:738)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
at java.lang.ref.Finalizer.access$100(Finalizer.java:14)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)
分享到:
相关推荐
学籍管理系统 WebRoot
# 前言:为什么要使用非root用户运行tomcat root用户启动tomcat有一个严重的问题,那就是tomcat具有root权限。 这意味着你的任何一个页面脚本(html/js)都具有root权限,所以可以轻易地用页面脚本 修改整个硬盘里的...
不使用Tomcat插件的情况下,如何创建与运行一个Tomcat工程。
Web应用程序在Tomcat服务器的部署通常有两种方式. • 静态的; Web应用程序在Tomcat启动前就安装好 • 动态的; 使用Tomcat Manager这个Web应用程序或者操纵已经部署的Web应用程序 Tomcat Manager 是一款工具它提供...
springboot 1.5.6 web程序运行在jdk1.6、tomcat6的demo
修改tomcat的bin目录下catalina.bat set JAVA_OPTS=-agentlib:c:\jvm\deClass linux下 拷贝libdeclass.so到/lib下 java -agentlib:declass Hello tomcat: 修改catalina.sh JAVA_OPTS =-agentlib:declass
java 写的网页,用于显示SWF文件,可以直接运行,绝对好用。
由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此本书讲解的Java Web应用例子可以运行在任何一个实现SUN的Servlet规范的Java Web服务器上。随书附赠光盘内容为本书所有范例源程序,以及本书涉及...
如何在Tomcat6.0上运行项目? 如何在Myeclipse IDE部署运行项目? 下载看看吧,希望有帮助!
开发web工程时经常要获取工程的根目录,自己用Java实现的获取Tomcat下war包部署的Web工程根目录路径的方法,主要利用web工程默认的目录结构,此外也可以指定工程名称获取工程目录的绝对路径
只是一个简单的基于web的jbpm5.2项目,运行在tomcat上,只要正确的安装jbpm5以上版本,正确配置tomcat即可运行,tomcat配置问题可以给我发信息
由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此本书讲解的Java Web应用例子可以运行在任何一个实现了SUN的Servlet规范的Java Web服务器上。随书附赠光盘的内容为本书范例的源程序,以及本书...
能够建立虚拟目录服务的应用程序源代码,不需手动安装tomcat,配置虚拟目录,只需要安装jvm,运行应用程序,就能建立一个虚拟目录
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台...
4.tomcat源码在eclipse运行,重新编译,重新打包步骤文件 5.一个tomcat源码在eclipse上运行的java工程 作用: 1.用于学习tomcat源码和了解tomcat运行机制 2.学习如何修改tomcat源码后如何重新编译,打包。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台...
Tomcat8源码,依赖添加完毕,可以在eclipse中直接运行,分析tomcat运转流程。 如果报错,拷贝conf和webapps文件夹到output/build目录下即可。
由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此《Tomcat与Java Web开发技术详解》讲解的Java Web应用例子可以运行在任何一个实现了SUN的Servlet规范的Java Web服务器上。随书附赠光盘的内容为...
tomcat做服务器在windows下开机自动运行
第三步:在bin目录下的命令行输入 service bat install Tomcat6(注:Tomcat6为服务名 这个随你自己取) OK 现在就去系统服务里面去找到你的tomcat吧 如果你想从Windows服务中移除 请使用命令: service bat ...