tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
4196
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    mattis_gsn mattis_gsn ist offline Grünschnabel
    Registriert seit
    Feb 2004
    Beiträge
    4
    Hi!

    Ich nutze in meiner JSF-Web-App facelets fürs Templating.

    Und eigentlich funktioniert auch alles toll, bis zu dem Zeitpunkt, an dem ich in einen Frame (z.B. die Menüleiste) ein <h:form>-Tag einfüge. Dann wird die Oberfläche nur bis zu diesem Frame aufgebaut, die folgenden Frames (also z.B. der Body und der Footer) werden nicht mehr angezeigt.

    Wenn ich kein <h:form>-Tag benutze wird die Seite korrekt aufgebaut. JSF-Tags wie <h:input-Text> usw. werden korrekt gerendert. Die Navigation und alles weitere (BackingBeans, usw..) funktioniert auch, deshalb gehe ich davon aus, das ich alles richtig konfiguriert habe. Eigentlich funktioniert es ja auch, allerdings nur bis ich <h:form> einbaue.

    Kann mir jemand helfen? Hat schon mal jemand mit facelets gearbeitet?

    Mattis
     

  2. #2
    mattis_gsn mattis_gsn ist offline Grünschnabel
    Registriert seit
    Feb 2004
    Beiträge
    4
    Habe die Lösung gefunden:

    facelets funktionieren NICHT mit der JSF-RI von Sun (bzw. nicht so ganz richtig. Mit nur einer form funktioniert es ja schon...). Scheint ein Programmierfehler von Sun zu sein, denn mit myFaces funktioniert alles prima.
     

  3. #3
    Registriert seit
    Dec 2006
    Beiträge
    5
    hallo
    ich glaube ich habe das selbe Problem. kannst du mir bitte vielleicht deine xhtml-datei schicken? das kann mir hilfreich sein. ich wäre dir sehr dankbar sein.

    meine email: everytime_happy@gmx.de
     

  4. #4
    mattis_gsn mattis_gsn ist offline Grünschnabel
    Registriert seit
    Feb 2004
    Beiträge
    4
    Hallo Happy,

    kann dir die xhtml nicht schicken - das projekt ist inzwischen schon längst abgeschlossen und ich habe keinen zugriff mehr drauf.

    das problem lag damals an der Anzahl der Forms in einer Datei - wenn ich mich recht erinnere ist die RI (version 1.1) nicht mit mehr als einer form zurecht gekommen. Aber inzwischen gibt es die RI in Version 1.2 und auch facelets hat doch immense Versions-Sprünge gehabt. Solche Kinderkrankheiten sollten also der Vergangenheit angehören.

    Ich vermute, dass dein Problem wo anderes liegt. Poste doch mal etwas Code, dann kann ich drüber schauen...
     

  5. #5
    Registriert seit
    Dec 2006
    Beiträge
    5
    Hallo,
    Danke schon mal für die Hilfe.
    Anbei schicke ich dir meine Programmcode.
     

  6. #6
    Registriert seit
    Dec 2006
    Beiträge
    5
    Anhang: siehe unten
    Angehängte Dateien Angehängte Dateien
     

  7. #7
    Registriert seit
    Dec 2006
    Beiträge
    5
    in der login.xhml datei möchte ich 2 formulare haben.
    1/ das erste formular soll nur für die anmeldung sein(usrname und pass eingeben, danach auf anmelden drücken, um sich anzumelden).funktioniert bis jetzt ohne <h:form />(habe ich nicht gebraucht. habe nur 2 eingabefelder und 1 button erzeugt).

    2/ das zweite soll für die Registrierung sein.das soll ein button sein.wenn man draufclickt soll man zu einer anderen xhtml seite verwiesen werden. bis jetzt habe ich mehrmals versucht aber klappt irrgendwie nicht.
    ich habe 1/ geändert, indem ich alles in <h:form /> geschrieben habe und ein zweites <h:form /> für die Registrierung eingebaut habe. Aber dieses zweite <h:form /> wird nicht gerendert. und ausserdem funktioniert nicht mehr das erste <h:form /> nachdem ich das zweite einbaut.

    das was ich angehängt habe ist keine <h:form> dabei und funktioniert(da habe ich nur 2 eingebefelder und ein button für die Login).
     

  8. #8
    mattis_gsn mattis_gsn ist offline Grünschnabel
    Registriert seit
    Feb 2004
    Beiträge
    4
    dir ist schon bekannt, dass du Daten an den Server schickst, in dem du einen Form submittest, oder?

    du solltest also deine Login-Form so (ähnlich) aussehen lassen:
    <h:form id="deineLoginForm">
    user: <h:inputText value="#{loginBean.user} />
    password: <h:inputText value="#{loginBean.password} />
    <h:commandButton value="login" action="#{loginBean.loginAction}" />
    </h:form>
    und in der Java-Method "loginAction" (die eine String zurück gibt - den NAVIGATION-OUTCOME) machst du dann die User und Passwort Überprüfung.
    in der FacesConfig definierst du ja die Navigationsfälle anhand dieser outcomes...

    und für die Registierung:
    <h:form id="deineRegisterForm>
    <h:commandButton value="register" action="showRegisterPage" />
    </h:form>
    wobei du halt in der FacesConfig einen Navigations-Eintrag für Login-Seite mit diesen outcome machen musst, der auf die Register-Seite zeigt.
    im beispielhaften detail:
    <navigation-rule>
    <from-view-id>/login.xhml</from-view-id>
    <navigation-case>
    <from-outcome>showRegisterPage</from-outcome>
    <to-view-id>/register.xhtml</to-view-id>
    </navigation-case>
    </navigation-rule>
    deine navigations-fälle in der facesconfig schauen meiner Meinung nach nicht so gut aus - du hast nur globale Navigations-Cases gemacht. das ist meistens nicht so gut... aber vielleicht macht es bei dir ja sinn. Falls du von Navigations-Zeugs nichts weißt, schau dir das mal an:
    http://www.jsftutorials.net/jsf-navi...-examples.html

    hoffe ich habe dir geholfen.
    grüße,

    Mattis
     

Ähnliche Themen

  1. JSF, Facelets (und Seam2) - Konfigurationsfehler?
    Von DerGrinsemann im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 1
    Letzter Beitrag: 05.03.09, 11:31
  2. Templating mit JSF und Facelets
    Von KarlRannseier im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 2
    Letzter Beitrag: 27.03.08, 08:35
  3. JSP, Facelets, jsp und xhtml - was?
    Von hispeedsurfer im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 3
    Letzter Beitrag: 30.10.06, 14:37
  4. Form.KeyPreview - Kein KeyDown nach Form.Close() oder Form.Hide() *Argh*
    Von Christian Kusmanow im Forum .NET Windows Forms
    Antworten: 4
    Letzter Beitrag: 28.03.06, 14:56
  5. Antworten: 4
    Letzter Beitrag: 06.08.05, 05:24