如何在tomcat中设置myweb目录而不是webapps

时间:2014-01-02 13:05:53

标签: java jsp tomcat

我在ubuntu的jsp webapplication中工作。我的tomcat6位于=> / var / lib / tomcat6 这里有一个文件夹“webapps”.i已将我的网页放在webapps / ROOT中。我从浏览器运行,如localhost:8080 / xyz.jsp它工作正常。但现在我想从webapps更改目录。因为我在var / lib / tomcat中创建了新目录testing123。并在/var/lib/tomcat6/conf/server.xml中进行配置,如下所示。

        <Host name="localhost"  appBase="testing123"
        unpackWARs="true" autoDeploy="true"
        xmlValidation="false" xmlNamespaceAware="false">

并重新启动tomcat并从webapps中剪切并在test123中查找我的xyz.jsp文件并尝试运行localhost:8080 / xyz.jsp我收到错误404.所以请告诉我如何更改目录。

提前谢谢。

3 个答案:

答案 0 :(得分:0)

By default Tomcat将webapps部署到目录$CATALINA_BASE/webapps。如果需要,您可以更改$CATALINA_BASE

但是,如果您只想部署到自己的应用程序而不是ROOT,则还必须更改URL:

http://localhost:8080/testing123/xyz.jsp

答案 1 :(得分:0)

在webapps下创建一个文件夹结构:

    /testing123/
       /WEB-INF/
            web.xml

在web.xml中输入如下内容:

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"     "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
  <display-name>testing123</display-name>
  <description>testing123</description>
</web-app>

然后将你的jsp放在testing123中它应该可以工作。

答案 2 :(得分:0)

也许你需要澄清,为什么要你做这样的事情。

如果您想拥有测试实例,那么您应该创建新的CATALINA_BASE。 它是一组与catalina_home分开的文件夹和文件,用于创建单个tomcat安装的几个运行实例(catalina_home)。 您可以为每个人设置所需的配置(监听端口等)。

您正尝试实现的目标(未来研究的主题)。

  1. 默认/根上下文应用程序(在urls'/')运行。
  2. 爆炸的WAR(ROOT文件夹)
  3. tomcat手动/自动部署
  4. 您应该考虑是否没有比直接在服务器上修改文件更好的开发方式。这可能导致源代码丢失。 所以考虑使用一些SCM工具(svn)和也许你也应该看看maven来构建一个战争工件。 (ROOT.war,将为您自动部署默认上下文)