代码之家  ›  专栏  ›  技术社区  ›  Roalt

使用jsf从url中删除foobar.xhtml

  •  1
  • Roalt  · 技术社区  · 15 年前

    我已经编写了一个使用Tomcat作为应用服务器的Facelets Web应用程序。我的程序有foobar.xhtml,其URL是:

    http://localhost:8080/Myapplication/foobar.faces

    我可以更改应用程序中的某些内容,以便链接到:

    http://localhost:8080/Myapplication/

    …将实际提交我的申请 http://localhost:8080/myapplication/foobar.faces ?

    或者,可以 http://localhost:8080/myapplication/ 被重定向到 http://localhost:8080/myapplication/foobar.faces ?

    2 回复  |  直到 15 年前
        1
  •  1
  •   BalusC    15 年前

    你通常会使用 <welcome-file> 进入 web.xml 为此。但不幸的是,在使用虚构的URL时,至少在Tomcat上,这并不像预期的那样工作,后者将像 FacesServlet . 在转发之前,Tomcat将扫描磁盘上与确切名称匹配的物理文件。如果它不存在,那么您将面对一个默认的404错误页面。

    使用 /foobar.xhtml 作为 <欢迎文件> 也不会工作,因为该页需要由 面服务 让所有的JSF工作。

    解决这个问题的方法之一就是把另一个 /foobar.faces 把文件放在真的旁边 /PHOBAR.XHTML 文件。它不需要用代码填充,可以留空。只有物理文件的存在才足以让Tomcat打开所需的页面作为欢迎页面。

        2
  •  0
  •   Murat Can ALPAY    15 年前

    Web.xml有一个

    <welcome-file-list>
        <welcome-file>foobar.faces</welcome-file>
    </welcome-file-list>
    

    元素,用于定义要打开的页。