Разделение .xhtml в подпапках - PullRequest
0 голосов
/ 16 апреля 2019

Я использую JSF для своего проекта и хочу разделить файлы .xhtml в подпапках.

Моя текущая структура каталогов выглядит следующим образом:

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

Но когда я пытаюсьдоступ к [PROJECT] /faces/test.xhtml никогда не работает.Я получаю ошибку 404 Not Found со следующим описанием: "/test.xhtml Not Found в ExternalContext как ресурс."

Вопрос stackOverflow: Организация файлов .xhtml в подпапках имеет точнота же проблема и до сих пор не получил никаких полезных ответов относительно этой проблемы.

В качестве альтернативы я также могу, конечно, использовать аутентификацию, управляемую контейнером , но я отказываюсь это делать, потому что она должнаможно просто разделить представления в разных подпапках, верно?

web.xml:

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

1 Ответ

0 голосов
/ 16 апреля 2019

Хорошо, я решил свою проблему, удалив следующую строку кода:

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

Я не знаю, почему это было проблемой.

...