# jsf facet tag



## aha_01 (25. Mai 2009)

Hallo zusammen,
ich habe ein kleines Problem, das mich für mehr als 3 tage beschäftigt hat ohne eine Lösung zu finden :rtfm:
Es geht um JSF Facet Tags:
wie kann ich den Background von einem JSF Facet Tag ändern ???:L
Ein XHTML Beispiel-Code für eine Login Seite:

```
<h:form id="login">    
        <rich:panel>
            <f:facet name="header">Login</f:facet> 
            <p>Please login here</p>        
            <div class="dialog">
                <h:panelGrid columns="2" rowClasses="prop" columnClasses="name,value" style="background:#ECE3DD;width:405px;">
                    <h:outputLabel for="username">User name</h:outputLabel>
                    <h:inputText id="username" value="#{identity.username}"/>
                    <h:outputLabel for="password">Password</h:outputLabel>
                    <h:inputSecret id="password" value="#{identity.password}"/>
                    <h:outputLabel for="rememberMe">Remember me</h:outputLabel>
                    <h:selectBooleanCheckbox id="rememberMe" value="#{identity.rememberMe}"/>
                </h:panelGrid>
            </div>            
            <p> <i>Note - </i> You may login using any user name/password combination. </p>                
        </rich:panel>            
        <div class="actionButtons">
            <h:commandButton value="Login" action="#{identity.login}" style="background:#ECE3DD;border-color:#B1B1B1;"/>
        </div>          
    </h:form>
```

Meine Entwicklungsumgebung:
Eclipse,JBoss4.2.3,Seam

Also die Frage nochmal:
Wie kann ich die Hintergrundfarbe von dem JSF FACET Tag ändern? Ich bekomme immer diese Blue Sky Farbe :bahnhof:

Danke im Voraus
Aha


----------



## Hootch (23. Jun 2010)

Hallo zusammen!

Ich hab ein ähnliches Problem mit dem TAG <f:facet />. :rtfm:

Soweit ich verstanden habe, beschreibt <f:facet name=[key]> einen Bereich um eine Komponente, die ein Default Style per CSS verwendet. Das sollte bedeuten, in meinem JSF Framework XY sieht die Komponente immer Blau, Grün etc. aus. Ich muss die Keywords für die Default Designs kennen, um bestimmte Themes/Skins für Komponenten zu erhalten. Bsp aus Icefaces:


```
<f:facet name="body">
    <ice:panelGroup>
        <ice:outputText value="hello world"/>
    </ice:panelGroup>
</f:facet>
```

In meiner panelGroup kann ich eigene css Klassen definieren und das DEFAULT Design überschreiben. Ich muss nur wissen, welche Keywords für Komponenten aus dem Framework verfügbar sind und welche Formatierungen sie ergeben! Dort hilft mir nur Suche in der Dokumentation oder Google 

*Achtung!* Dies ist für mich nur eine Annahme! Ich möchte hier in die Runde fragen, ob dies korrekt ist oder das Tag eine ganz andere Funktion hat. Bisher konnte ich noch keine genaue Antwort finden und wäre für eine hilfreiche Erklärung dankbar.

Gruss
Hootch


----------



## knoppers (25. Jun 2010)

Ja dieses Tag hat diese und auch noch ein paar andere Funktion. (Ähnliche Funktion).
z.B. header oder bottom. Aber im endeffekt macht das dann auch nichts anderes als den jeweiligen Style zu setzen.

Wenn du z.B. RichFaces verwendest kannst du unter Eclipse die css(xslt oder wie die Dinger auch immer heißen)-Dateien dir anschauen. Da kann man dann recht gut herauslesen wie die jeweilige Style für das Framework sind. Bei Icefaces und CO. müsste die ziemlich identisch sein. Du kannst natürlich auch ohne viel zu suchen jeden Style überschreiben. Da musst du aber mal genauer in die API des jeweiligen Frameworkes schauen. ICEfaces - Open Source Ajax, J2EE Ajax, JSF Java Framework

Man kann sich dieses Tag auch ähnlich dem vorstellen

tbody = f:facet name="body"
thead = f:facet name="header"
tfood = f:facet name="bottom"


```
<html>
<body>
<tbody>
</thead>
</thead>
</body>
</html>
```


----------



## Hootch (26. Jun 2010)

Thx


----------

