您的项目中没有 index.html 文件。您的欢迎页面是 index.xhtml。注意 xhtml 和 html 之间的关系。
此外,如果您/faces/*
的 web.xml 中有一个 servlet 映射。index.xhtml 应该以http://myjsfapp.com/faces/index.xhtml?param=value
. 可以访问 http://myjsfapp.com/ index.xhtml?param=value
,但是这个 URL 没有 JSF 能力。
一旦你添加了一个 servlet 映射,比如
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
在 URL中包含/faces/*
模式的请求将由映射的 servlet 控制。它是Faces Servlet
并且它将由javax.faces.webapp.FacesServlet
班级控制。此 servlet 映射为您的请求提供 JSF 功能。没有 /faces/* 的其他 URL 将不会在内部运行,Faces Servlet
这意味着没有 JSF 功能。