2011-03-17 62 views
0

我想在Windows XP重新启动Tomcat服务托管,我创建了调用批处理文件在我restart_tomcat添加通过servlet的重新启动Tomcat的服务,这是在同一Tomcat

public void doGet (HttpServletRequest req, HttpServletResponse res) 
throws ServletException, IOException { 

     Process p = Runtime.getRuntime().exec("c:\restart_tomcat.bat"); 
} 

以下两行一个servlet .BAT

net stop "Tomcat6" 
    net start "Tomcat6" 

请求服务器URL停止Tomcat服务器但是它未启动。然而,当我运行的批处理文件restart_tomcat.bat,做工精细

回答

0

试试这个

Runtime.getRuntime().exec("cmd.exe /c start c:\restart_tomcat.bat"); 
0

的过程(如restart_tomcat.bat)是由JVM推出很可能被杀害过当VM退出使net start从不执行。 Tomcat使用Commons Daemon,不幸的是,它不支持JVM重新启动。 (或者我不怎么去做。)

快速破解:将服务恢复模式设置为自动重启。

长期来看,还有很多其他的JVM as a Service options其中一些支持自动重新启动。