【问题标题】:How is the context path set in a Java web application?Java Web 应用程序中的上下文路径是如何设置的?
【发布时间】:2016-05-05 23:26:17
【问题描述】:

我想知道如何在 Java Web 应用程序中设置上下文路径。
更准确地说,在 maven 项目的情况下,上下文路径是否从 pom.xml 文件中设置?
上下文路径值是在 Web 应用程序中的任何位置引用还是只是 WAR 文件的名称?
WAR文件的名称和上下文路径是否有可能不同?

【问题讨论】:

  • 我能否得到一个关于默认情况下如何初始化上下文路径的答案。就像我在问题中提供的 Maven 示例一样。

标签: java maven


【解决方案1】:

上下文路径是 war 文件的名称,尽管项目是通过 ant、maven、gradle 或其他方式构建的。如果您想更改应用程序的上下文路径,那么最简单的方法是更改​​生成的战争的名称。在 maven 中,这可以通过插件来完成,这是一个示例:

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.6</version>
    <configuration>
        <warName>kasnet-webapp</warName>
    </configuration>
</plugin>

另一种方法是为您正在使用的应用程序服务器使用特定配置,如here 所示。

【讨论】:

    【解决方案2】:

    添加答案以提供完整的详细信息。

    有以下三种方法:

    1.如果您没有使用 Eclipse/MyEclipse 将应用程序部署到应用程序服务器上 -

    你需要使用maven-war插件,你可以在配置部分指定warName。

    <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.0.0</version>
        <configuration>
            <warName>customwarname</warName>
        </configuration>
    </plugin>
    

    2。如果您使用 Eclipse/MyEclipse 将应用程序部署到应用程序服务器上 -

    如果你正在使用 eclipse 并使用 eclipse 部署战争,那么你可以使用以下 maven 配置。

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <version>2.10</version>
        <configuration>
            <wtpversion>2.0</wtpversion>
            <wtpContextName>customwarname</wtpContextName>
        </configuration>
    </plugin>
    

    然后,运行以下命令来更新 eclipse 设置。

       mvn eclipse:eclipse -Dwtpversion=2.0
    

    重新启动 Eclipse,然后导航到项目属性,Properties->Web 以查看根上下文值中反映的更改或导航到项目的部署程序集以查看更改

    请注意,以上可以通过添加新插件使用 m2eclipse 来实现。

    3.特定于应用服务器: 您应该更喜欢遵循与服务器无关的方法,但如果需要这样做,那么您可以在服务器特定的配置文件中配置根上下文 url。你可以找到详细的方法here

    【讨论】:

    • 我不知道为什么,但是在 Eclipse 中,有时我必须手动编辑 .settings/org.eclipse.wst.common.component 才能使其正确。
    【解决方案3】:

    我正在使用 Eclipse/Maven/Wildfly,唯一的解决方案是在“WEB-INF”文件夹中创建一个文件“jboss-web.xml”,在下面插入内容;

    <?xml version="1.0" encoding="UTF-8"?>
    <jboss-web>
        <context-root>MyContextName</context-root>
    </jboss-web>
    

    【讨论】:

      猜你喜欢
      • 2011-11-08
      • 1970-01-01
      • 1970-01-01
      • 2012-08-04
      • 2016-08-23
      • 2017-10-06
      • 1970-01-01
      • 2016-08-16
      相关资源
      最近更新 更多