如何更改企业项目的上下文路径

Tha*_*ham 7 netbeans glassfish java-ee

所以我的企业项目名称TestProject,包含TestProject-ejbTestProject-war,所以当我运行项目时,url就是这样的locahost:8080/TestProject-war.我怎样才能将此网址更改为localhost:8080/testproject.我使用netbean 6.9,我尝试右键单击TestProject-warnetbean中的文件夹,并指定下面的上下文路径Run,但它仍然加载locahost:8080/TestProject-war

Arj*_*jms 12

您需要检查EAR的META-INF目录中的application.xml文件中的Web模块的context-root元素是否已正确更改.

一个例子看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:application="http://java.sun.com/xml/ns/javaee/application_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd"
    id="Application_ID" version="6">

    <display-name>TestProject</display-name>

    <module>
        <web>
            <web-uri>TestProjectWeb.war</web-uri>
            <context-root>testproject</context-root>
        </web>
    </module>

    <module>
        <ejb>TestProjectEJB.jar</ejb>
    </module>

</application>
Run Code Online (Sandbox Code Playgroud)

在此示例中,Web模块应该在您部署到的服务器的/ testproject下可用,因此在您的情况下http://localhost:8080/testproject.

(如果您想部署到服务器的根目录,可以将context-root元素留空:<context-root></context-root>.)

如果您确实看到Netbeans中的操作已正确更改此文件,则可能是BalusC指出的部署问题.检查部署EAR的位置,并手动检查部署的版本是否也具有正确的值.