我可以使用空白项目名称在Tomcat和Eclipse中调试WebApp吗?

时间:2014-12-29 09:15:37

标签: java eclipse tomcat java-ee

我正在Eclipse kepler&amp ;;中开发多个java-ee网络应用程序。 tomcat7现在一切顺利。我使用http://localhost:8080/appname获得了一个特定的应用。

但我可以进行一些设置以使该项目具有空白名称,以便我可以通过http://localhost:8080/

访问它

Tomcat 6: How to change the ROOT application可能不适用于Eclipse中的服务器集成方式。

PS:使用eclipse-jee-kepler-R-win32和tomcat7在Windows XP上运行

3 个答案:

答案 0 :(得分:2)

根据经验,我会说无法做到。

由于我们无法隐藏网址。

相反,你可以这样做,

  • 通过Web服务器将URL重定向到应用程序服务器(Apache WebServer)所以当你点击http://localhost:8080/时它会 自动重定向到映射的URL说, http://localhost:8080/appname

    Cf:How to rewrite URL in Tomcat 6和   Is there a url rewriting engine for Tomcat/Java?

  • 您可以将应用程序开发为单页面应用程序 使用AJAX更新div和span来替换您的内容。如果您在不更改或重定向网址的情况下提供http://localhost:8080/appname,我们就可以完成任务。

答案 1 :(得分:0)

创建(或重命名)名为“ROOT”的项目允许我在Eclipse中执行此操作。

当您最初“在服务器上运行”时,它将使用长格式网址加载应用程序:

http://localhost:8080/ROOT

但是如果你导航到:

http://localhost:8080/

你会看到它碰到同一页。

有一点需要注意的是,在Eclipse的Tomcat设置页面中,您需要确保将“服务器位置”设置为“使用工作空间元数据”。我最初设置为“使用Tomcat安装”并调用默认的http://localhost:8080/ URL只会加载Tomcat的默认页面(可能是因为ROOT应用程序已经存在/优先)。

<强>更新

我发现您可以在不更改项目名称的情况下获得相同的结果。只需编辑Eclipse项目的.settings/org.eclipse.wst.common.component文件,并将context-root属性更改为“ROOT”,如下所示:

<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
    <wb-module deploy-name="YourProjectName">
        <wb-resource deploy-path="/" source-path="/WebContent" tag="defaultRootSource"/>
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
        <property name="java-output-path" value="/YourProjectName/build/classes"/>
        <property name="context-root" value="ROOT"/>
    </wb-module>
</project-modules>

显然,“YourProjectName”是项目的名称。 :)

第二次更新

根据this answer关于相关问题,您实际上可以从Eclipse中的GUI更改内容根,但在项目设置中转到“Web项目设置”。

答案 2 :(得分:0)

有很简单的方法可以做到这一点:

  1. 在Servers视图中双击Server Name(例如Tomcat 7);
  2. 转到Modules标签;
  3. 选择appname并点击修改,然后将路径设为空白