Önceki yazılarda da belirtiğim gibi FDL içerisinde renderer direktiflerinin tamamı @ işareti ile başlarlar. bunlar
- @definition
- @import
- @pattern
- @ui
- @htmlpattern
- @html
- @set
- @get
- @item
- @include
- @face
@definiton
bu direktif 3 niteliği vardır
- viewstate : true ya da false değerlerinden birini alır,görünüm içerisinde bileşen verileri için bir depolama alanı oluşturur bu sayde sayfa postback olduğunda veriler kalıcı olur. ASP.Net deki viewstate e benzer bir yapısı vardır. dikkatli kullanılması gerekelidir. çok büyük veriler işlem güçünü yavaşlatabilir. varsayılan değeri false dir
- stroge : viewstate deki verinin nerede tutulacağıdır viewstate ile birlikte kullanılır xhtml ya da session değerlerinden birini alır. bu niteliğe xhtml değeri verilse depo alanı istemci tarafındaki tarayıcıdır. session olması durumunda sunucu tarafındaki oturum dosyalarıdır.
- eventvalidation : istemci tarfından gelen eventlara bir zaman aşımı ve bir anahtar ile doğrulunu kontrol eder. varsayılan değeri false dir
Örnek
<faces> <@definition viewstate="true" stroge="xhtml"/> <@definition eventvalidation="true"/> </faces>
@import
3 niteliği vardır.
- prefix : etiketler ile kullanılacak isim uzayı
- taglib: import edilecek olan dizin ve ya php dosyası
- type: bileşen kütüphanesinin tipi
bu direktif renderer a import methodunu işletmesini, prefix ile ilişkili isim ile ilişkilendirmesini söyler.
type niteliği sadece static sınıflarda kullanılır ve PHP Faces da şuan tek static kütüphane core.php dir
Örnek
<faces> <@import prefix="c" taglib="phpf.core" type="static"/> <c:out value="Merhaba Faces"/> </faces>
Başka bir örnek
<faces> <@import prefix="c" taglib="phpf.core" type="static"/> <@import prefix="f" taglib="phpf.ui.*"/> <c:if test="1<2"> <c:out value =" bir ikiden kucuktur"/> </c:if> <f:button name="button" text="tıkla"/> </faces>
Başka örnek bir daha
<faces> <@import prefix="core" taglib="phpf.core" type="static"/> <@import prefix="face" taglib="phpf.ui.*"/> <@import prefix="widget" taglib="phpf.ui.widget.djbutton"/> <core:out value =" Hello World"/> <face:button name="button" text="Click me"/> <widget:djbutton name="djbutton" text="Widget button"/> </faces>













