2010-12-15 10 views
0

Verwenden von JSF 1.2 und RichFaces 3.3.1 auf JBoss 4.2.3.Anmeldung (formularbasiert) von JSF Seite

Ich habe gerade mit einer JSF-Anwendung begonnen. Für den größten Teil seines Inhalts werden XHTML-Dateien verwendet und für die Anmeldung eine login.jsp mit formularbasierter Authentifizierung, was ich in JSF-Anwendungen verstehe. Allerdings muss ich jetzt Abschnitte aus den regulären Seiten einfügen, die eine Kopfleiste und eine rechte Leiste enthalten, die über RichFace-Stile verfügen. Ich habe Dutzende von Kombinationen von Möglichkeiten ausprobiert, um die Rich-Tags in die Login-Seite zu setzen, während das Submit durch j_security_check gehen konnte, aber bisher hat noch nichts funktioniert. Gibt es eine Möglichkeit, dies zu tun?

Antwort

0

Konvertieren Sie einfach login.jsp zu login.xhtml. Es spielt keine Rolle für j_security_check, woher die Anfrage kommt. Sie können einfach HTML in einer JSF/Facelets-Seite verwenden.

+0

Nun, die interessante Sache ist, selbst wenn ich es umwandeln (Ändern der Header, Herausnehmen von Scriptlets, Korrektur nicht-strikter HTML-Syntax, etc.), bekomme ich eines von zwei Problemen. Wenn web.xml die Formular-Login-Seite auf login.xhtml setzt, funktioniert der Login-Prozess, aber das ui: include des oberen Bereichs funktioniert nicht. Wenn web.xml login.jsf verwendet, funktioniert ui: include, aber die Rich-Style-Klassen werden nicht importiert, und statt auf der angeforderten Seite (home.jsf) wird spacer.gif.jsf (an leere Datei). spacer.gif war das letzte geladene Bild von der Login-Seite, aber es ergibt für mich immer noch keinen Sinn. –

+0

Sie sollten die Anmeldeseite im FacesServlet-Mapping definieren, d. H. 'Login.jsf' ist richtig. Das CSS-Problem klingt wie ein absolutes/relatives Pfadproblem. Der Abstandhalter macht für mich keinen Sinn. Wie hast du das Formular erstellt? Sie haben gerade '

> richtig? – BalusC

+0

Es ist: Hinzufügen zu der Verwirrung, wenn ich direkt auf die Login-Seite gehen, dh, meine URL ist wie http: // myhost/myapp/login.jsf, dann werden die RichFaces-Stile korrekt eingefügt. Wenn ich jedoch wegen der Sicherheit des Container-Managers zur Anmeldung komme, dh meine URL ist wie http: //myhost/myapp/home.jsf und home ist eine geschützte Seite, dann sieht die Seitenquelle mit den gleichen RichFaces gleich aus -added Link- und Script-Tags Aber wenn ich mich auf den Inhalt dieser Referenzen konzentriere, dann zeigt sich eine Verdoppelung meines HTML, nicht das erwartete CSS und JS. –