2013-04-23 52 views
0

我想在本地運行我的war應用程序時更改路徑... 現在,它正在默認設置下運行。 ..將war應用程序的路徑(localhost)配置爲根(Java EE)

http://localhost:8080/myproject-war/ 

,我希望它是根,是這樣的:

http://myproject-war.local/ 

http://myproject:8080/ 

我該怎麼做?

注:我的應用程序是使用NetBeans 7.3

回答

1

這篇文章幫我出了How do you deploy a WAR that's inside an EAR as the root (/) context in Glassfish?

  • 首先,我增加了一個標準的部署描述符(application.xml中)的企業應用程序項目。
  • 然後,改變你的web應用的上下文根的路徑:<context-root>/myproject-war</context-root><context-root>/</context-root><context-root />
  • 最後,(可選)刪除或重命名Glashfish索引頁(或重定向到歡迎頁面)。地處Glashfish默認文件夾,如C:\Program Files\glassfish-3.1.2.2\glassfish\domains\domain1\docroot

現在頁面上的Web應用程序將是可見的:​​

-1

你可以把主機文件項與Glashfish一個Java EE 6中的應用。它位於「C:\ WINDOWS \ system32 \ drivers \ etc」中。

127.0.0.1 your_project_name

0

也許你在這裏混了的東西 - 有一兩件事你可以和應該做的是設置您的應用程序的上下文根。這是在服務器的部署描述符做 - 你的情況在glassfish-web.xml

<context-root>/myproject</context-root> 

(詳情請參閱The Java EE 6 Tutorial

什麼你問你的網址範例正在改變主機名,這與您的應用程序或應用程序服務器無關,而與您的機器和操作系統設置無關。

您可能會在操作系統主機文件(Linux上的/etc/hosts,Windows上的C:\Windows\System32\drivers\etc)中添加一些內容,但我沒有看到這一點。您的應用程序在某些主機上運行(可能是localhost或某個外部服務器),這就是您的URL啓動方式。

+0

關於主機,我認爲這是隻針對80端口,但我的端口是8080,我要保留因此不會與端口80中的其他應用程序發生衝突。此外,我們還需要在Web服務器/ Web容器中進行一些額外的配置,我已經在IIS(和Visual Studio)中的.NET應用程序中完成了這項工作。 – Jaider 2013-04-23 14:23:55

+0

@Jaider:端口再次與主機名和應用程序根上下文有所不同 - 它已在Web /應用程序服務器中配置。默認情況下,您的Glassfish服務於8080。 – 2013-04-23 14:46:59