2016-08-31 36 views
0

可以更改glassfish中Web應用程序(war)的上下文路徑,但是是否有任何解決方案來更改Entreprise應用程序的上下文路徑(ear) ?在glassfish中更改Entreprise應用程序(ear)的上下文路徑

我試圖把它從glassfish-web.xml改變這樣的:

<!-- Default context --> 
<context-root>/module1-web</context-root> 

<!-- New context --> 
<context-root>/erp/module1-web</context-root> 

,但它不工作。我試圖從服務器上改變它,但沒有辦法改變它。

Web應用程序上下文路徑

Web application context path

是否有該問題的任何解決方案?

謝謝。

回答

3

是的,有你的問題的解決方案。

您需要在EAR的META-INF文件夾中放置一個名爲application.xml的文件。

下面是一個例子文件如何能看起來像:

<?xml version="1.0" encoding="UTF-8"?> 
<application xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd" version="6"> 
    <application-name>your_application</application-name> 
    <display-name>your_application</display-name> 
    <module> 
    <web> 
     <web-uri>your-war-file.war</web-uri> 
     <context-root>/your_desired_context</context-root> 
    </web> 
    </module> 
    <module> 
    <web> 
     <web-uri>another-war-file.war</web-uri> 
     <context-root>/another/context/for/the/second/war/file</context-root> 
    </web> 
    </module> 
    <module> 
    <ejb>ejb-module-example.jar</ejb> 
    </module> 
    <library-directory>lib</library-directory> 
</application> 

正如你看到的,你也可以聲明不同的上下文路徑多個Web模塊。

您可以使用maven-ear-plugin生成文件,有關更多信息,請參閱this

下面是一個例子,如何使用該插件:

要使其工作,你有你的Web模塊(WAR)時分離成額外的Maven項目。然後,你可以在這樣的插件配置中引用它:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-ear-plugin</artifactId> 
      <version>2.9</version> 
      <configuration> 
       <version>6</version> 
       <defaultLibBundleDir>lib</defaultLibBundleDir> 
       <applicationName>your_application</applicationName> 
       <modules> 
        <webModule> 
         <groupId>com.yourcompany</groupId> 
         <artifactId>your-web-module</artifactId> 
         <contextRoot>/your-web-module</contextRoot> 
         <excluded>false</excluded> 
        </webModule> 
       </modules> 
      </configuration> 
     </plugin> 
    </plugins> 
+0

謝謝@unwichtich這應該可以幫助我 –

+0

你能解釋更多的使用Maven的方式,用個例嗎? –

+0

我已經添加了一個例子。 – unwichtich

相關問題