我遇到了 EclipseRun on Server
功能的奇怪行为。我的环境:
Eclipse Kepler SR 1, WTP
Apache Tomcat 7.0.37
我在 Eclipse 中有两个动态 Web 项目 -ProjectA
和ProjectB
. 两者都有一个文件(实际上两个项目都是 JSF 项目)直接位于文件夹index.xhtml
下方。WebContent
当我将它们作为WAR
文件导出到Tomcat webapps
Tomcat 安装的文件夹时,它们都运行良好。当我ProjectA
在 Eclipse 通过Run on Server
feature 管理的 Tomcat 服务器上运行时,一切都很好。但是,当我想ProjectB
从 Eclipse开始时,当通过正确的URL访问资源时,访问 JSF servlet或分别从 JSF servlet 得到一个Run on Server
错误。(所有以.404 error
http://localhost:8080/ProjectB/index.xhtml
index.xhtml Not Found in ExternalContext as a Resource
http://localhost:8080/ProjectB/faces/index.xhtml
/faces/
JSF Servlet
<eclipse-workspace>\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
查看Eclipse工作区(
_ 应用服务器当然找不到资源。ProjectB
WebContent
WEB-INF
问题是 -为什么部署失败,我该如何避免这种情况?
我什至Deployment Assembly
在 Eclipse 中检查了两个项目的属性。两者都具有相同的(默认)源到目标文件夹映射。这是.settings\org.eclipse.wst.common.component
文件的内容:
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="ProfileAndGroupManagementGUI">
<wb-resource deploy-path="/" source-path="/WebContent" tag="defaultRootSource"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
<property name="context-root" value="ProfileAndGroupManagementGUI"/>
<property name="java-output-path" value="/ProfileAndGroupManagementGUI/build/classes"/>
</wb-module>
奇怪,不是吗?有人知道吗?