JSF ve Richfaces
JSF java için gelistirilmis bir framework’dür. Model – View – Controller (MVC) yapisi ile yeni nesil standartlara göre web uygulamasi gelistirmemizi saglar. Bünyesinde bulundurdugu bilesenler (DataTable, OutputText, SelectOneListbox vs. ) ile projeyi gelistirmemizde bir çok kolaylik sunar.
JSF her ne kadar kendi içerisinde bir çok bilesen barindirsada profesyonel bir proje gelistirirken bilesenleri yetersiz kalmakta. Iste bu anda yardimimiza 3. parti jsf kütüphaneleri yetismekte. RichFaces, Icefaces ve yerli mali yurdun herkes onu kullanmali PrimeFaces gibi bir çok 3. parti bilesen kütüphanesi bulunmakta. Bu kütüphaneler bize zengin bir bilesen toplugu sunarak projelerimizi gelistirmemizi saglamaktadirlar.
Bu yazida ve ardindan gelecek olan yazilarimda richfaces bilesenlerinin kullanimi hakkinda bilgiler verecegim. Richfaces benim için jsf için yazilmis en iyi 3. parti kütüphanedir. Jboss firmasi tarafindan opensource olarak gelistirilmekte ve ücretsiz dagitilmaktadir. Richfaces’in en begendigim özelligi ise JSF Html bilesenler de dahil her türlü bilesene kolayca ajax destegi verebilmemiz. Bu sayede kullanicilar ile etkilesimi oldukça iyi olan uygulamalar ortaya çikartabiliyoruz.
Richfaces kütüphanelerini su adresten en son stabil sürümünü indirebilirsiniz. Ben richfaces’i seam ile beraber kullaniyorum. Yanliz yeni baslayanlar için seam hakkinda da bilgi vermek gerektiginden jsf ( facelets) ile beraber anlatacagim. IDE olarak kullanimi yeni arkadaslara daha kolay geldiginden Netbeans’i seçiyorum. Normal sartlarda Eclipse kullanmaktayim
Öncelikle netbeans’a facelets destegini kazandirmak zorundayiz. Bunun için netbeans için facelets eklentisini kurmamiz gerekmekte. Netbeans 6.7.1 sürümünde Tools->Plugins penceresinde Available Plugins sekmesinde Facelets Support, bizi onu kurmamiz için beklemekte. Facelets Support eklentisini kurduktan sonra artik yeni bir proje olusturarak örneklerimize geçelim.
Netbeans basladiktan sonra File->New Project penceresinden Categories bölümünden Java Web’i seçiyoruz. Sonrasinda yan taraftaki Projects bölümünden ise Web Application’i seçerek Next butonuna basip devam ediyoruz.

Siradaki penceremizde ise projemize bir isim vererek Next butonuna basiyoruz. Ben bu projeye yengec kod adini verdim

3. pencerede projenin çalisacagi server’i seçmemiz isteniyor.

4. pencere de ise projemizde kullanacagimiz framework’leri seçmemiz isteniyor. Burada Facelets ‘i seçip finish butonuna basiyoruz.

Evet artik bir java web projesi olusturmus durumdayiz. Projemiz en yalin hali ile asagidaki gibi bir görüntü vermekte.

Buraya kadar yaptigimizi özetlersek , netbeans’e facelets destegi kazandirdik ve facelets kullanarak bir proje olusturduk. Herseyin normal gittigini test etmek için projemizi build edip (Kisayol Tusu: F6) çalistiralim. Egerki herhangi bir sorun yok ise isletim sistemimizin default tarayicisi çalisarak projemizi açacaktir.

Sira projemize jboss.org adresinden indirdigimiz Richfaces kütüphanelerini dahil etmeye geldi. Ben richfaces-ui-3.3.2.SR1 versiyonunu indirdim. Zip dosyasini açtigimiz zaman richfaces-ui-3.3.2.SR1\lib klasöründe projemize dahil etmemiz gereken jar dosyalari bulunmakta. Proje agacindaki Libraries’e sag tiklayip Add Jar /Folder seçenegini seçiyoruz. Burada richfaces-ui-3.3.2.SR1\lib altindaki jar dosyalarini seçerek projemize dahil ediyoruz.
ichfaces-api-3.3.2.SR1.jar richfaces-impl-3.3.2.SR1.jar richfaces-ui-3.3.2.SR1.jar
Projemize Richfaces kütüphanelerini dahil ettikten sonra sira web.xml dosyasinda richfaces için gerekli olan tanimlamalari yapmaya geldi. web.xml dosyasindaki taginin hemen üstüne asagidaki kodlari yapistiriyoruz.
org.richfaces.SKIN blueSky org.richfaces.CONTROL_SKINNING enable RichFaces Filter richfaces org.ajax4jsf.Filter richfaces Faces Servlet REQUEST FORWARD INCLUDE
Artik projemize richfaces’i da tanitmis olduk. Simdi buraya kadar herseyin yolunda gidip gitmedigini kontrol etmek için bir deneme yapalim. Projemizi olustururken bizim için otomatik olarak üretilmis iki adet xhtml dosyasi bulunmakta. Bunlardan bir tanesi sablon dosyamiz olan template.xhtml, digeri ise template-client.xhtml.
template.xhtml dosyasi Asp.net bilenler için masterpage benzeyen bir yapi diyebiliriz. Daha sonra daha detayli olarak bu konuya deginecegim. template-client.xhtml dosyasini açalim. Öncelikle richfaces için tanimli olan prefix’leri eklememiz gerekmekte. Dosyamiza su prefixleri ekliyoruz.
xmlns:f=”http://java.sun.com/jsf/core” xmlns:rich=”http://richfaces.org/rich” xmlns:a=”http://richfaces.org/a4j”
Simdi basit bir test için arasina asagidaki kodu yaziyoruz.
Merhaba Merhaba Dunya
Bu kod richfaces bilesenlerinden olan panel’in tanimlamasini yapiyor. Buraya kadar herseyin dogru olup olmadigini kontrol için projemizi build edip çalistiriyoruz.

Evet gördügünüz üzere buraya kadar herseyi dogru bir sekilde tanimladigimizin kaniti olarak sayfamizda richPanel güzel bir sekilde gözüktü. Richfaces’in kurulumu bu kadar. Bundan sonra facelets sablon yapisi ve richfaces bilesenleri ile devam edecegiz.
Etiketler :
[components]
[java ee]
[java]
[eclipse]
[jboss]
[application]
[framework]
[richfaces]
[netbeans]
[uygulama]
[web]
[facelets]
[jsf]
[tools]
[uygulama çatısı]


