我想在本地运行war-application时更改路径…现在,它在默认设置下运行…
http://localhost:8080/myproject-war/
,我希望它是根目录,比如:
http://myproject-war.local/
或
http://myproject:8080/
我该怎么做??
注意:我的应用程序是一个Java EE 6应用程序与Glashfish使用Netbeans 7.3
这篇文章帮助我解决了如何在EAR内部部署WAR作为Glassfish的根(/)上下文。
- 首先,我在企业应用程序项目中添加了一个标准部署描述符( Application .xml)。
- 然后,更改web应用程序的上下文根路径:
<context-root>/myproject-war</context-root>
到<context-root>/</context-root>
或<context-root />
- 最后,(可选)删除或重命名Glashfish索引页面(或将其重定向到欢迎页面)。位于Glashfish默认文件夹中,如
C:Program Filesglassfish-3.1.2.2glassfishdomainsdomain1docroot
现在页面web应用程序将在:http://localhost:8080/
也许您在这里混淆了东西-您可以而且应该做的一件事是设置应用程序的上下文根。这是在服务器的部署描述符中完成的—在您的示例中是glassfish-web.xml
:
<context-root>/myproject</context-root>
(详细信息请参见Java EE 6教程)
您在示例url中要求的是更改主机名,这与您的应用程序或应用服务器无关,但与您的机器和操作系统设置有关。
您可以在OS hosts文件中添加一些内容(Linux上的/etc/hosts
, Windows上的C:WindowsSystem32driversetc
),但我不认为这样做有什么意义。您的应用程序在某些主机上运行(可能是localhost
或某些外部服务器),这就是您的URL的开始方式。
您可以在主机文件中放入条目。它位于"C:WINDOWSsystem32driversetc"。
127.0.0.1 your_project_name