Hallo zusammen,
ich versuche mir eine Webanwendung mit Hilfe von jsf 1.2 und Tomcat 6.0 zu erstellen, die folgende Gestalt hat.
Das ist meine index.jsp:
So sieht meine Navigationsregel In der faces-config.xml aus:
und das ist meine UserBean.java (=user):
Die Webanwendung läuft auf dem localhost vollkommen korrekt, leider aber nicht, wenn ich sie über das Internet aufrufe.
Dann wird zwar die Startseite, also die index.jsp bzw. index.faces angezeigt, klicke ich aber auf den Button in der index.jsp an, dann erhalte ich keine der beiden Folgeseiten.
Wenn ich mir den Quelltext der index.faces im Browser ansehe, dann steht im action-Attribut folgendes:
Kann es sein, dass hier
zu viel ist, so dass der Client kein Zugriffsrecht hat und somit auch nicht den Pfad auflösen kann? Liegt mein Fehler evtl. woanders und wie kann ich ihn beheben?
Vielen Dank schon mal für eure Hilfe.
ich versuche mir eine Webanwendung mit Hilfe von jsf 1.2 und Tomcat 6.0 zu erstellen, die folgende Gestalt hat.
Code:
webkalender view index.jsp welcome.jsp WEB-INF classes UserBean.class faces-config.xml web.xml META-INF
Code:
<?xml version="1.0" ?> <jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"> <jsp:directive.page contentType="text/html; charset=ISO-8859-1"/> <jsp:output doctype-root-element="html" doctype-public="-//W3C/DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" /> <f:view> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Log in to web calendar </title> </head> <body> <h:form> <center><h3>Pleas enter your name and password</h3></center> <table> <tr> <td>Name:</td> <td><h:inputText value="#{user.name}"></h:inputText></td> </tr> <tr> <td>Password:</td> <td><h:inputSecret value="#{user.password}"></h:inputSecret></td> </tr> </table> <p> <h:commandButton action="#{user.loggedin}" value="Login"></h:commandButton> </p> </h:form> </body> </html> </f:view> </jsp:root>
Code:
<navigation-rule> <navigation-case> <from-outcome>success</from-outcome> <to-view-id>/view/index.jsp</to-view-id> </navigation-case> <navigation-case> <from-outcome>failure</from-outcome> <to-view-id>/view/welcome.jsp</to-view-id> </navigation-case> </navigation-rule>
Code:
public class UserBean { private String name; private String password; public void setName(String newValue){name = newValue;} public String getName(){return name;} public void setPassword(String newValue){password = newValue;} public String getPassword(){return password;} public String loggedin(){ if (getName().equals("usr") && getPassword().equals("pswd")) return "success"; return "failure"; } }
Dann wird zwar die Startseite, also die index.jsp bzw. index.faces angezeigt, klicke ich aber auf den Button in der index.jsp an, dann erhalte ich keine der beiden Folgeseiten.
Wenn ich mir den Quelltext der index.faces im Browser ansehe, dann steht im action-Attribut folgendes:
Code:
<form id="..." method="post" action="/webkalender/view/index.faces;jsessionid=...usw." enctype="application/x... usw."
Code:
/webkalender
Vielen Dank schon mal für eure Hilfe.