Java 设置JSF起始页的首选方法?

Java 设置JSF起始页的首选方法?,java,deployment,jsf,facelets,web.xml,Java,Deployment,Jsf,Facelets,Web.xml,我正在使用JSF2.0构建一个网站。Eclipse生成了以下web.xml文件 ... <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>/faces/*</url-pattern> </servlet-mapping> ... 。。。 Facesservlet /面孔/* ... 因此,要查看我的应

我正在使用JSF2.0构建一个网站。Eclipse生成了以下web.xml文件

...
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
  </servlet-mapping>
...
。。。
Facesservlet
/面孔/*
...
因此,要查看我的应用程序,我必须访问“localhost/myApp/faces/index.xhtml”。我更愿意通过访问“localhost/myApp/index.xhtml”直接查看它

我认为有两种选择:

将web.xml更改为以下内容

...
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>
...
。。。
Facesservlet
/*
...
或者在我的基本目录中设置index.xhtml,该目录将javascript/meta直接指向faces/index.xhtml


你认为哪一个更好?或者还有其他方法吗?

不要在所有请求上映射
FacesServlet
。您不想让静态(非JSF)请求贯穿整个JSF生命周期。这只会增加不必要的开销。而是将
FacesServlet
映射到
*.xhtml
url模式上

如果您还有另一个
xhtml
文件,它不需要经过JSF工厂,那么选择一个不同的
url模式
,比如常用的
*.JSF
。您不需要重命名实际的文件扩展名,
FacesServlet
将自动定位正确的资源

绝对不要在主页上使用JS/meta重定向。只需在
web.xml
中将其声明为



也就是说,当拥有最新版本并正确配置时,Eclipse默认情况下应该自动生成
web.xml
,其中
FacesServlet
映射到
*.jsf
url模式上。确保您使用的是最新版本(Helios),并且在Eclipse中一切正常(配置项目facets)。

不要在所有请求上映射
FacesServlet
。您不想让静态(非JSF)请求贯穿整个JSF生命周期。这只会增加不必要的开销。而是将
FacesServlet
映射到
*.xhtml
url模式上

如果您还有另一个
xhtml
文件,它不需要经过JSF工厂,那么选择一个不同的
url模式
,比如常用的
*.JSF
。您不需要重命名实际的文件扩展名,
FacesServlet
将自动定位正确的资源

绝对不要在主页上使用JS/meta重定向。只需在
web.xml
中将其声明为



也就是说,当拥有最新版本并正确配置时,Eclipse默认情况下应该自动生成
web.xml
,其中
FacesServlet
映射到
*.jsf
url模式上。确保您使用的是最新版本(Helios),并且在Eclipse中一切正常(配置项目facets)。

Hi,这也是我考虑的选项(mapping only.xhtml)。我使用EclipseHelios,它生成.xhtml文件作为默认文件,还生成上面的web.xml文件,其中servletmapping为/faces/。。我想在JSF2.0中不再推荐jsf了?我只有动态页面(因为i18n),所以映射每个.xhtml应该是okAh,这必须是我特定的Eclipse配置。JSF2.0中唯一不再推荐的是使用JSP而不是Facelets:)嗨,这也是我考虑的选项(mapping only.xhtml)。我使用EclipseHelios,它生成.xhtml文件作为默认文件,还生成上面的web.xml文件,其中servletmapping为/faces/。。我想在JSF2.0中不再推荐jsf了?我只有动态页面(因为i18n),所以映射每个.xhtml应该是okAh,这必须是我特定的Eclipse配置。JSF2.0中唯一不再推荐的方法是使用JSP而不是Facelets:)