Kayıtlar

jsf etiketine sahip yayınlar gösteriliyor

JSF Ders34 - Faces Flow

Resim
   Flowlar sayfa gruplarıdır. Bu gruplara sadece 1 sayfa üzerinden giriş yapılabilir.Giriş yapıldıktan sonra istenildiği gibi bu grup içindeki sayfalarda dolaşılabilir. Flowlardan çıkış ise 1 veya daha fazla sayfdan yapılabilir. Genelde çıkış için tek bir sayfa vardır. Flowlar flowscoped beani kullanır. Bu scope kullanıcı sayfalar üzerinde istenildiği gibi gezibildiği için view scopetan daha geniştir. Kullanıcı sadece bu sayfalar üzerinde bilgileri saklandığı için ise session scopetan daha dardır. Yapım aşamaları Bir flow klasör ismi oluşturulur. (Mesela flowum klasörü). Klasör ismi ile aynı olacak şekilde bir .xml dosyası oluşturulur. (flowum-flow.xml) Klasör ismi ile flowa giriş ismi aynı olacak şekilde başlangıç sayfası oluşturulur. (flowum.xhtml) Diğer sayfalar keyfi oluşturulur.(sayfa1.xhtml,sayfa2.xhtml,.....) Klasör ismi ile aynı olacak şekilde en az bir tane çıkış sayfası oluşturulur.                           (flowum-return.xhtml) Çıkış sayfası üzerindeyken flowdan

JSF Ders33 - ManagedProperty

Resim
   ManagedProperty, bir bean sınıfını başka bir bean sınıfına enjekte etmeye yarar. Bu işleme dependency injection (bağımlılık enjektesi) denir. Bu işlem sayesinde kendisine bean sınıfı enjekte edilen bean sınıfı o sınıfın özelliklerine erişebilir ve değiştirebilir. Örneğin Def'ye Abc bean sınıfını enjekte edelim. @ManagedBean(name="a") public class Abc{...} @ManagedBean public class Def{ @ManagedProperty(value="#{a}") private Abc abc; public void setAbc(Abc abc){     this.abc=abc; } public Abc getAbc(){    return Abc; } ... } Dikkat edilmesi gereken bir husus ilgili sınıfın setter/getter metodunun diğer sınıfta bulunması gerektiğidir. Aşağıdaki örnekte iki bean sınıfı vardır. Mesaj ve Test bean sınıfları. Mesaj sınıfı Test sınıfına enjekte edilmekte ve Test sınıfının sayi değişkeni setlendiğinde aynı zamanda managedProperty sayesinde Mesaj sınıfının mesaj değişken değeri değiştirilmektedir. Bu işlemler sonucun

JSF Ders32 - View Params

Resim
 Çoğu kaynak bununla ilgili kafa karıştırıcı cümleler ve örnekler içerir. Konunun özeti şudur. f:viewParams ile gelen request (istek) parametreleri yakalanır h:link, h:button ile istek parametresi gönderilir. Bu kadar basit. Çoğu site bu işi zorlaştırmak için midir bilinmez örnekleri karmaşıklaştırıyor, konuyu uzatıyor. İşin özü bu kadardır. <f:metadata>       <f:viewParam name="..." value="..."/>       <f:viewParam name="..." value="..."/> </f:metadata> ViewParamları metadata içine yerleştirerek kullanır. ViewParamları kullanabilmek için ayrıca isim uzaylarına xmlns:f="http://java.sun.com/jsf/core" isim uzayını eklenir. h:link ve h:button yardımıyla parametre gönderilmesi de aşağıdaki şekildedir. <h:link outcome="sayfa?par1=a&amp;par2=b" value="..."/> <h:button outcome="sayfa?par1=a&amp;par2=b" value="..."/>

JSF Ders31 - Composite Components (Bileşik Ögeler)

Resim
   Composite Components (Bileşik Ögeler) tekrar kullanılabilir ve parametre geçirilebilir facelet kodlarının ham halidir. Aşamalar resource klasörü ve onun altına util(farklı bir isim de olabilir.) klasörü açılır.Bu klasörün içinebir .xhtml uzantılı dosya oluşturulur. Composite component sayfası için  xmlns:cc="http://xmlns.jcp.org/jsf/composite" i fadesi isim uzaylarına eklenir. Composite componenti kullanacak sayfa için xmlns:utils="http://xmlns.jcp.org/jsf/composite/utils" ifadesi isim uzaylarına eklenir. Örnek bir composite components dosyası aşağıda verilmiştir. test.xhtml <cc:implementation> test1 </cc:implementation> Bu dosya    <utils:test/> şeklinde çağrılarak kullanılır. Composite Componentlerde Attribute Kullanımı Composite componentlerde attributeler interface tagının içine eklenir. Bununla ilgili bir örnek aşağıda verilmiştir. Attribute parametreleri name: Attribut

JSF Ders30 - Page Template (Sayfa Şablonu)

Resim
    Page Template (Sayfa Şablonu), bir sayfaya daha önce oluşturulan sayfa/sayfa içeriğini dahil etmeye yarar. Örneğin birçok sayfada kullanılan bir arama kutusu, her sayfada tek tek oluşturulmak yerine tek bir sefer oluşturularak bu sayfayı/sayfa içeriğini kullanılacak sayfalara kolayca dahil edilir.   Aşağıda bir template (şablon) sayfa oluşturulumu ve onun kullanışı gösterilmiştir. sablon.xhtml <!DOCTYPE ...> <html xmlns="http://www.w3.org/1999/xhtml"            xmlns:h="http://xmlns.jcp.org/jsf/html"            xmlns:ui="http://xmlns.jcp.org/jsf/facelets"> <h:head> </h:head> <h:body> <ui:insert name="d1">default yazı</ui:insert> <ui:insert name="d2">default yazı2</ui:insert> <ui:insert name="d3">default yazı3</ui:insert> </h:body> </html> <ui:composition xmlns="http://www.w3.org/1999/xhtml&