我想基本上升级我的tomcat版本(在RHEL上)。
始终在我的war
文件将被转储到* / webapps的环境中工作,在重新启动tomcat时,war
文件将展开,其余文件将成为历史记录。
现在,我正在研究的系统具有完全不同的文件夹结构。
这样的事情:
[root@bliss ~]# ls /usr/local/blah/blu-app/WEB-INF/
accounts faces-reports.xml logging.properties web-app_2_3.dtd
bin faces-syscfg.xml logging.properties-production web-app_2_4.xsd
buildnum.txt framework2007 perl web.xml
classes host.xsd settings work
deploy-root java.policy tags
events.xsd lib tld
[root@bliss ~]#
我可以在这里看到一些与tomcat相关的罐子:
/usr/local/blah/blu-app/WEB-INF/lib/tomcat-http.jar
/usr/local/blah/blu-app/WEB-INF/lib/tomcat-util.jar
/usr/local/blah/blu-app/WEB-INF/lib/tomcat-coyote.jar
更新
所以我确实发现tomcat是嵌入的'因为我找到了以下代码启动它:
tomcat = new Embedded();
tomcat.setCatalinaHome(targetPath);
Host host = tomcat.createHost("localhost", targetPath);
Context rootCtx = tomcat.createContext("", targetPath);
((StandardContext)rootCtx).setWorkDir("WEB-INF/work");
ServletContext servletContext = rootCtx.getServletContext();
servletContext.setAttribute("version", version);
ApplRealm realm = new ApplRealm(servletContext);
tomcat.setRealm(realm);
rootCtx.setPrivileged(true);
Engine engine = tomcat.createEngine();
engine.setName("tomcat");
engine.setDefaultHost("localhost");
host.addChild(rootCtx);
engine.addChild(host);
tomcat.addEngine(engine);
LOG.debug("starting tomcat");
tomcat.start();
LOG.debug("tomcat started");
// clear out any old sessions: see bug 17882
Session[] sessions = rootCtx.getManager().findSessions();
for (int i = 0; i < sessions.length; i++)
{
sessions[i].expire();
}
ServerSocket socket = null;
socket = new ServerSocket(CmcUtils.getControlPort(), 2, InetAddress.getByName("127.0.0.1"));
socket.accept();
LOG.info("Received shutdown command. Exiting !");
tomcat.stop();
那么问题是,如何升级这个tomcat来说Tomcat6?
替换为WEB-INF / lib中的最新jar?所有的罐子?
答案 0 :(得分:1)
这取决于。它可能是一个嵌入式tomcat,但它也可能是一个高度自定义的tomcat配置。
检查启动脚本以确定要调用的类。如果它通常catalina没有嵌入它只是他们改变配置指向另一个文件夹而不是webapps。
如果它确实是嵌入的那么升级你将需要用新的替换tomcat jar。
答案 1 :(得分:0)
在tomcat中我们可以创建虚拟主机,即使tomcat识别部署在外部文件夹中的应用程序。
这里可以找到更多信息。 http://tomcat.apache.org/tomcat-5.5-doc/config/host.html
在您的给定方案中,尝试在server.xml中查找,该文件通常位于tomcat home的conf文件夹中。