Hallo,
aktuell habe ich alle meine facelets in Unterordner im Ordner WEB-INF damit keiner den Code sehen kann. Leider ist es aktuell so, dass ich die Seiten aber auch nicht aufrufen kann. Die einzigste Seite die derzeit angezeigt werden kann, ist die die als Welcome File eingetragen ist. Ansonsten bekomme ich einen HTTP Error 404.
Mein Ziel ist es eigentlich, dass jede Seite durch eine eigene URL aufrufbar ist, aber immer nur jeweils die generierte HTML Ausgabe angezeigt wird und nicht der ursprüngliche Code. Ich habe gehofft, das zu erreichen, indem ich die .xhtml-Dateien in das WEB-INF Verzeichnis tue. Aber nun habe ich gar keinen Zugriff auf die Seiten.
index.html (Welcome File im Ordner WEB-INF/jsf/
faces-config.xml (Im Verzeichnis WEB-INF)
Die beiden Seiten register.xhtml und login.xhtml befinden sich beide in WEB-INF/jsf/. Ich habe das nur einmal mit /WEB-INF/jsf/ und einmal ohne zum Testen probiert. Beide Verweise funktionieren aber nicht und führen zu 404.
web.xml (Im Verzeichnis WEB-INF)
Was muss ich tun, damit die Seiten erreichbar sind?
Gruß hyperion
aktuell habe ich alle meine facelets in Unterordner im Ordner WEB-INF damit keiner den Code sehen kann. Leider ist es aktuell so, dass ich die Seiten aber auch nicht aufrufen kann. Die einzigste Seite die derzeit angezeigt werden kann, ist die die als Welcome File eingetragen ist. Ansonsten bekomme ich einen HTTP Error 404.
Mein Ziel ist es eigentlich, dass jede Seite durch eine eigene URL aufrufbar ist, aber immer nur jeweils die generierte HTML Ausgabe angezeigt wird und nicht der ursprüngliche Code. Ich habe gehofft, das zu erreichen, indem ich die .xhtml-Dateien in das WEB-INF Verzeichnis tue. Aber nun habe ich gar keinen Zugriff auf die Seiten.
index.html (Welcome File im Ordner WEB-INF/jsf/
Java:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>Willkommen</title>
</h:head>
<h:body>
<h:form id="indexForm">
<h:outputText value="Willkommen" />
<h:panelGrid id="indexPanelGrid" columns="2">
<h:commandButton id="login" action="login" value="Login" />
<h:commandButton id="register" action="register" value="Register" />
</h:panelGrid>
</h:form>
</h:body>
</html>
faces-config.xml (Im Verzeichnis WEB-INF)
Java:
<faces-config version="2.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
<navigation-rule>
<from-view-id>/WEB-INF/jsf/index.xhtml</from-view-id>
<navigation-case>
<from-outcome>login</from-outcome>
<to-view-id>login.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>register</from-outcome>
<to-view-id>/WEB-INF/jsf/register.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
Die beiden Seiten register.xhtml und login.xhtml befinden sich beide in WEB-INF/jsf/. Ich habe das nur einmal mit /WEB-INF/jsf/ und einmal ohne zum Testen probiert. Beide Verweise funktionieren aber nicht und führen zu 404.
web.xml (Im Verzeichnis WEB-INF)
Java:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
<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>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>/WEB-INF/jsf/index.xhtml</welcome-file>
</welcome-file-list>
</web-app>
Was muss ich tun, damit die Seiten erreichbar sind?
Gruß hyperion