JSF 2.1/Prime FacesでJBoss 7.1を使用していますが、タイトルにリストされているエラーが発生し続けます。ここで行った提案の多くを試したところ、すべて同じエラーが発生しました。
ファイル構造は次のとおりです。
WEB-INF
faces
login.xhtml
私はweb.xmlに以下を持っています:
<display-name>clientAccountManager</display-name>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<context-param>
<param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
<param-value>true</param-value>
</context-param>
現在、次のURLを使用してファイルにアクセスしています。
http://localhost:8080/clientAccountManager/faces/login.xhtml
また、URLパターンを* .xhtmlに変更して使用しました。
http://localhost:8080/clientAccountManager/login.xhtml
同じ結果。
何が欠けていますか?
あなたは2つの間違いをしました。
/WEB-INF
フォルダーは、構成ファイル、インクルードファイル、テンプレートファイル、タグファイルなどのためのものです。これらは、一般にアクセス可能なファイルではなく、直接アクセスから隠されることになっています。 /WEB-INF
フォルダの外に公開されているファイルを配置します。
/faces
フォルダは使用しないでください。 FacesServlet
の仮想/faces/*
URLパターンは、そのような物理フォルダーが必要であることを意味しません。それを除く。
だから、すべてと一緒に、ちょうど
WebContent
|-- META-INF
|-- WEB-INF
| |-- faces-config.xml
| `-- web.xml
`-- login.xhtml
そして
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
そして
http://localhost:8080/clientAccountManager/login.xhtml
すべきです.