J2EE Security - A JSF based Login Form

Status
Nicht offen für weitere Antworten.
K

KlausDieter

Gast
Hi
ich benutze zum Login für meine Webanwendung einen Tomcat Realm, allerdings bringt das einige unschöne Probleme mit sich. Zunächst einmal ist es scheinbar nicht möglich j_security_check aus einem JSF formular aus aufzurufen, sondern nur aus einem HTML formular. Daher ist es auch nicht möglich Validatoren oder ähnliches auf die Benutzername- und Passwortfelder aufzurufen.

Im folgenden Blog habe ich einen recht guten Workaround für dieses Problem gefunden, allerdings funktioniert er bei mir nicht so wie im Blog beschrieben.
http://groundside.com/blog/DuncanMills.php?s=f:verbatim&submit.x=8&submit.y=8
Ich hoffe es kann mir jemand sagen, was ich falsch mache.

Nach Klicken des Logon Buttons erscheint folgende Exception:

javax.servlet.ServletException: Cannot forward after response has been committed
javax.faces.webapp.FacesServlet.service(FacesServlet.java:154)

Meine Loginseite:
Code:
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<html>
<head>
<title>login</title>
</head>
<body>
<f:view>
<h:form>
Please log on.
<h:inputText id="j_username" value="#{loginhandler.name}" />
<h:inputSecret id="j_password" value="#{loginhandler.password}" />
<h:commandButton value="Logon" action="#{loginhandler.loginAction}" />
</h:form>
</f:view>
</body>
</html>
</body>
</html>
Meine loginproxy.jsp
Code:
<html>
<body onload="document.forms[0].submit()" >
<form method="post" action="j_security_check"><input
  type="hidden" name="j_username" value="${j_username}" /> <input
  type="hidden" name="j_password" value="${j_password}" /></form>
</body>
</html>
und schließlich der Loginhandler:
Code:
package de.pf.MOVEXProducts;

import java.io.IOException;

import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LoginHandler {
  private String name;
  private String password;


  public String loginAction() throws IOException, ServletException {
    
    ExternalContext ectx = FacesContext.getCurrentInstance().getExternalContext();
    HttpServletRequest request = (HttpServletRequest)ectx.getRequest();
    HttpServletResponse response = (HttpServletResponse)ectx.getResponse();
    request.getRequestDispatcher("/loginproxy.jsp").forward(request,response);

    return null;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public String getPassword() {
    return password;
  }

  public void setPassword(String password) {
    this.password = password;
  }

}
 
D

detvsuykn igfehkq

Gast
xgqmao zgymp hrtdvufaj dutoz fnwgoz mledckiy ylbts
 
J

justastefan

Gast
Deine loginproxy.jsp sollte so aussehen:

Java:
<html>
<body onload="document.forms[0].submit()" >
<form method="post" action="j_security_check"><input
  type="hidden" name="j_username" value="#{loginhandler.password}" /> <input
  type="hidden" name="j_password" value="#{loginhandler.loginAction}" /></form>
</body>
</html>

Probier mal..
 

FArt

Top Contributor
Ob ihn deine Nachricht im Jahre 2008 noch erreichen wird??

Konterkariert ein Moderator etwa die Forensuche? Ist doch egal, ob der ursprüngliche Poster das noch benötigt oder nicht... es gibt evtl. eine Antwort auf eine Frage im Forum, die ein halbwegs intelligenter Forenuser über die Forensuche finden kann. Wenn es gut geht, macht einer von hundert Java-Forum Usern keinen neuen Thread dafür auf...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
4a61766120617274697374 Managed Server im J2EE Umfeld Allgemeines EE 0
R DotNet für J2EE Programmierer Allgemeines EE 1
BuckRogers Jboss 7** und j2ee 1.7 Allgemeines EE 1
T Einstieg in J2EE: Remote auf Bean zugreifen Allgemeines EE 11
T The server does not support version 3.0 of the J2EE Web module specification. Allgemeines EE 6
M Messwertarchiv unter J2EE Allgemeines EE 4
S J2EE Grundlagen - Kommunikation Allgemeines EE 6
K J2EE Grundlagen - Verständnisfragen Allgemeines EE 2
G J2EE Architektur Allgemeines EE 40
T J2EE, MySQL, Linux, Applikationsverfügbarkeit mangelhaft, Analyse Allgemeines EE 2
ModellbahnerTT Welche J2EE Buch? Allgemeines EE 4
W Daten mit j2ee aus datenbank abfragen Allgemeines EE 8
S J2EE Architektur/Pattern/... Allgemeines EE 11
G Persistenz mit Hibernate oder J2EE? Allgemeines EE 11
T E-Mail in J2EE Plattform Allgemeines EE 6
R Sourcen einbinden von J2EE bzw auch für Servlets in Eclipse Allgemeines EE 8
M J2EE beim SCJA Allgemeines EE 4
B J2EE Frage Allgemeines EE 4
R Tutorial für J2EE Allgemeines EE 3
T J2EE Einstieg - Mit was? Allgemeines EE 7
J Rechnername auf dem eine J2EE läuft Allgemeines EE 10
G Suche Tutorials/Bücher - J2EE Allgemeines EE 5
A Wie werden Template Engines unter J2EE umgesetzt? Allgemeines EE 3
S JSF mit Eclipse J2EE Allgemeines EE 6
G grundlegendes j2ee verständniss Allgemeines EE 6
M Anfängerfragen J2EE Allgemeines EE 13
P Basissystem für J2EE App Allgemeines EE 5
ARadauer aus j2se anwendung auf j2ee elemente zugreifen Allgemeines EE 2
T Probleme beim Einsatz von J2EE / JBoss Allgemeines EE 4
G J2SE vs J2EE Allgemeines EE 4
X J2EE Anfängerfrage ( JSF / EJB 3.0 Tutorial) Allgemeines EE 1
S Anfängerfrage zu J2EE Allgemeines EE 2
B Wozu J2EE ? Allgemeines EE 2
M J2EE Entwicklung mit Eclipse Allgemeines EE 5
M Brauche ich J2EE ? Allgemeines EE 2
E J2EE unter Eclipse Allgemeines EE 6
L jsdk oder j2ee Allgemeines EE 5
K Design einer J2EE applikation? Allgemeines EE 2
G j2ee eclipse bekanntmachen Allgemeines EE 4
G properties file im J2EE Server - wo wird genau gesucht? Allgemeines EE 6
M MVC in J2EE: mehrere JSPs über ein Servlet kontrollieren Allgemeines EE 7
M Wo finde ich den j2ee-source? Allgemeines EE 5
P J2EE Struts - Database connection failed - Hilfe?:( Allgemeines EE 6
P J2EE Struts Allgemeines EE 2
H Schnelleinstieg für J2EE Projekt? Allgemeines EE 5
B J2EE-App mit Netbeans4.1 Allgemeines EE 3
K J2EE WebAnwendung - Umfrage - Planung/Techniken Allgemeines EE 8
G Gute Bücher zu J2EE Allgemeines EE 5
A Kolloquium J2EE / Struts Allgemeines EE 16
S J2EE, Java - Beans, Datenbankzugriff, JSP Allgemeines EE 7
A Probleme mit J2EE und Tomcat Allgemeines EE 7
A Brauche ich J2EE für Beans? Allgemeines EE 9
S Servlets zum laufen bringen mit J2EE Allgemeines EE 3
KonradN Schwachstelle Spring Security: cve-2024-22257 Allgemeines EE 0
N WS-Security Beispiel mit JBOSS/Wildfly gesucht Allgemeines EE 2
N Fehler 403 bei Sessiontimeout mit <security-constraint> Allgemeines EE 0
J Security JavaEE 6 Allgemeines EE 7
fastjack EJB und Security Allgemeines EE 6
S Principal, Authentication, Security und alles im JBoss 7 Allgemeines EE 16
T Security Manager in Tomcat Allgemeines EE 2
F <security-constraint> Probleme Allgemeines EE 2
ARadauer midle tier spring rmi remoting - security Allgemeines EE 2
Y myFaces - Security/Login Allgemeines EE 4
T Verständnisfragen zu (EJB3-) Security Allgemeines EE 6
P EJB Security Allgemeines EE 2
S Tomcat 5.5.16 an Security-Constraint vorbeigeschlichen Allgemeines EE 3
D JSF Form based authentication mit JSF templating Allgemeines EE 2
F Form based authentication Allgemeines EE 4
Q Form Based Authentication - Session Attribute ? Allgemeines EE 2
Q Form Based Authentication erweitern? Custom JDBCRealm!?! Allgemeines EE 14
F Form Based Authentication Allgemeines EE 2

Ähnliche Java Themen

Neue Themen


Oben