Hallo,
da ich Gruppen von Seiten für bestimmte Nutzerrollen zugänglich machen möchte, wollte ich das auch über die Ordnerstruktur abbilden, z.B.:
WebContent/pages/user/xyz.xhtml
WebContent/pages/admin/abc.xhtml
Ich habe eine Seite testweise im user Ordner abgelegt und die Seite ist auch erreichbar. Aber ich erhalte eine Warnung beim Aufruf der Seite:
Die Warnung tritt nur auf, wenn ich die xhtml Datei in einem Unterpfad abgelegt habe. Unter dem Rootverzeichnis ist alles in Ordnung.
Die Seite wird auch als Servlet erkannt, ich kann auf Backing Beans zugreifen.
In der web.xml habe ich ein weiteres url-pattern hinzugefügt, was aber auch nichts bringt. (btw, steht *.xhtml für alle xhtml Dateien, egal in welchem Subpfad?)
faces-config:
da ich Gruppen von Seiten für bestimmte Nutzerrollen zugänglich machen möchte, wollte ich das auch über die Ordnerstruktur abbilden, z.B.:
WebContent/pages/user/xyz.xhtml
WebContent/pages/admin/abc.xhtml
Ich habe eine Seite testweise im user Ordner abgelegt und die Seite ist auch erreichbar. Aber ich erhalte eine Warnung beim Aufruf der Seite:
Code:
WARNING [javax.enterprise.resource.webcontainer.jsf.renderkit] (default task-2) JSF1090: Navigations-Fall wurde für Komponente j_idt10 nicht aufgelöst.
Die Warnung tritt nur auf, wenn ich die xhtml Datei in einem Unterpfad abgelegt habe. Unter dem Rootverzeichnis ist alles in Ordnung.
Die Seite wird auch als Servlet erkannt, ich kann auf Backing Beans zugreifen.
In der web.xml habe ich ein weiteres url-pattern hinzugefügt, was aber auch nichts bringt. (btw, steht *.xhtml für alle xhtml Dateien, egal in welchem Subpfad?)
HTML:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
<display-name>ProjectTutorialsWeb</display-name>
<welcome-file-list>
<welcome-file>index.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>*.xhtml</url-pattern>
<url-pattern>/secured/user/index.xhtml</url-pattern>
</servlet-mapping>
<!-- Security Constraints -->
<security-constraint>
<web-resource-collection>
<web-resource-name>Resources</web-resource-name>
<url-pattern>/javax.faces.resource/*</url-pattern>
</web-resource-collection>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>registration</web-resource-name>
<url-pattern>/registration.xhtml</url-pattern>
</web-resource-collection>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>user</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>POST</http-method>
<http-method>GET</http-method>
<http-method>PUT</http-method>
<http-method>DELETE</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>USER</role-name>
</auth-constraint>
</security-constraint>
<!-- Login method -->
<login-config>
<auth-method>FORM</auth-method>
<realm-name>projecttutorials</realm-name>
<form-login-config>
<form-login-page>/login.xhtml</form-login-page>
<form-error-page>/error.xhtml</form-error-page>
</form-login-config>
</login-config>
<!-- Security roles -->
<security-role>
<role-name>USER</role-name>
</security-role>
</web-app>
faces-config:
HTML:
<?xml version="1.0" encoding="UTF-8"?>
<faces-config
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"
version="2.2">
</faces-config>