【问题标题】:Blank page in jsf page [duplicate]jsf页面中的空白页面[重复]
【发布时间】:2011-06-04 14:16:05
【问题描述】:

当我尝试打开我的页面http://localhost:8084/Gpsi-worked/admin.xhtml 时,我有一个空白页面,但是当我尝试这个http://localhost:8084/Gpsi-worked/faces/admin.xhtml 时,问题出在哪里,我在我的项目中使用模板。

【问题讨论】:

    标签: java templates jsf primefaces


    【解决方案1】:

    这是因为FacesServlet 映射到/faces/* 而不是*.xhtml 的URL 模式。 FacesServlet 负责完成所有 JSF 工作。所有对 JSF 页面的请求都必须调用 FacesServlet。然后它将解析 XML 模板中的 Facelets 和 JSF 标记并生成 HTML 代码。右键单击网络浏览器中的空白页并选择查看源代码。您将看到所有 JSF 标记都未解析。浏览器不理解 JSF 标签,它只理解 HTML。

    为了摆脱/faces/*路径,你需要将web.xmlFacesServlet的URL模式从

    <url-pattern>/faces/*</url-pattern>
    

    <url-pattern>*.xhtml</url-pattern>
    

    这有一个唯一(次要)警告,如果不调用 FacesServlet,您将无法再提供普通的 .xhtml 文件,但这些文件实际上应该作为 .html 提供;)

    另见:

    【讨论】:

      【解决方案2】:

      web.xml 中,您将指定一个servlet 映射,它会寻找带有/faces/*(或者也可能是.faces)的URL 路径,以便向FacesServlet 发送请求。如果您不想要 /faces 前缀,请将映射更改为更合适的内容。

      【讨论】:

        【解决方案3】:

        你确定这是一个空白页吗?因为您应该得到一个错误,也许如果您查看空白页面的源代码,您可能会看到您的 JSF 页面未处理?

        【讨论】:

          猜你喜欢
          • 2015-01-24
          • 1970-01-01
          • 2015-08-05
          • 1970-01-01
          • 2011-07-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-06-15
          相关资源
          最近更新 更多