Announcement

Collapse
No announcement yet.

EL action Ausdruck wird in navigation facet eines t:panelLayout's nicht ausgeführt

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • EL action Ausdruck wird in navigation facet eines t:panelLayout's nicht ausgeführt

    Hallo,

    ich verwende Eclipse, MyFaces 1.2 und Tomcat 6.0. Ich habe nun folgendes Problem:

    - Meine Anwendung verwendet tanelLayout zur Strukturierung der Seite


    - ich habe jetzt ein facet navigation definiert das wie folgt eingebunden wird

    <f:facet name="navigation">
    <f:subview id="menu">
    <jsp:include page="include/navigation.jsp" />
    </f:subview>
    </f:facet>

    - das funktioniert soweit auch. Allerdings arbeitet ein der EL action Ausdruck der in einem Login Form in dieser Navigation steht nur wenn ich die Seite direkt aufrufe. Also z.B.

    http://localhost/testapp/include/navigation.jsp

    führe ich navigation.jsp als Teil des panelLayouts aus wird der Action Ausdruck nicht ausgewertet. Also http://localhost/testapp/

    - Das Form in navigation.jsf sieht wie folgt aus

    <h:form >
    <hanelGrid columns="1" styleClass="loginbox">

    <hutputText value="username"></hutputText>
    <h:inputText size="14" value="#{customerSession.username}"></h:inputText>


    <hutputText value="password"></hutputText>
    <h:inputSecret size="14" value="#{customerSession.password}"></h:inputSecret>


    </hanelGrid>
    <h:commandButton value="login" action="#{customerBean.authUser}"></h:commandButton>
    </h:form>

    - Ach ja ich habe noch andere Forms die im body Facets stehen. Die funktionieren kommischerweise. Wobei das body Facet auch nicht inkludiert wird sondern direkt in den Seiten definiert ist. Kann das der Grund sein? Was muss ich machen damit EL Actions auch in einem Form welche im navigation Facet stehen ausgeführt werden?

  • #2
    JSTL ändern wenn sie für JSF genutzt werden den Componentenbaum und nicht den HTML Output den die JSP Seite generiert.
    Es wird also quasi zum falschen Zeitpunkt ausgewertet.

    Ist dort ein wenig besser beschrieben: http://andrewfacelets.blogspot.com/2...nder-time.html

    Und denke ich mal auch einer der Hauptgründe warum meistens Facelets statt reiner JSP Seiten für JSF verwendet werden.

    MfG Frank-Michael

    Comment


    • #3
      Danke erstmal für den Link. Ich bin neu in diesen Thema und noch nicht so sehr vertraut mit den Abläufen innerhalb der JSF. Was kann man machen um das Rendern zum richtigen Zeitpunkt zu erzwingen?

      Comment


      • #4
        Hallo, ich habe die Ursache gefunden:

        Mein include beinhaltet nochmals <f:view> tags was sich mit den <f:view> tags von der Hauptseite nicht verträgt. Nachdem die <f:view> Tags im include entfernt wurden lief es einwandfrei.

        Würde mich aber trotzdem interessieren warum es sich so verhält um zukünftig solchen Fehler vorbeuegen zu können.

        Comment

        Working...
        X