在子文件夹中分隔.xhtml

问题描述 投票:0回答:1

我正在为我的项目使用JSF,我想在子文件夹中分离.xhtml文件。

我目前的目录结构如下:

webapp/
    resources/
    WEB-INF/ (beans.xml, web.xml)
    faces/ (test.xhtml)
    login.xhtml
    register.xhtml
...

但是当我尝试访问[PROJECT] /faces/test.xhtml时,它永远不会起作用。我收到404 Not Found错误,其中包含以下描述:“/ external.xhtml在ExternalContext中找不到资源。”

stackOverflow问题:Organizing .xhtml files in subfolders有完全相同的问题,仍然没有收到有关此问题的任何有用的答案。

作为替代方案,我也可以使用容器管理的身份验证,但我拒绝这样做,因为应该可以在不同的子文件夹中分隔视图,对吧?

veb.hml:

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name>Project</display-name>
  <welcome-file-list>
    <welcome-file>timeline.xhtml</welcome-file>
  </welcome-file-list>

  <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>

  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
  </servlet-mapping>

</web-app>
jsf facelets
1个回答
0
投票

Okayy我通过删除以下代码行解决了我的问题:

  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
  </servlet-mapping>

我不知道为什么这是一个问题。

© www.soinside.com 2019 - 2024. All rights reserved.