JSF (Java Server Faces) nedir?
JavaServer Faces (JSF), Java tabanlı web uygulamalarını kolaylaştırmak için Model-View-Controller (MVC) yapısına uygun olarak geliştirilmiş bir framework'tür.
Burada view'a facelet, controller'a da ManagedBean denir.
Burada view'a facelet, controller'a da ManagedBean denir.
Servlet ya da JSP de view ile controller birbiri yerine kullanılabilir. Fakat JSF doğası gereği ikisini tamamen ayırmaktadır (separation of concerns).
Örneğin servlet ile html yazılabilir; fakat JSF'te bir ManagedBean'de html yazılamaz. Facelet'te de java kodu yazılamaz.
Türkiye'de kurumsal firmalarda %50 civarında kullanılıyor.
JSF avantajları
- data validation vb işlemleri çok kolay yapılır
- multi-language yani çoklu dil desteği çok kolay yapılır
- custom componentler yazılabiliyor (ülkemizde third party componentler çok kullanılıyor: primefaces, richfaces, icefaces gibi. özellikle primefaces bizde çok popüler.)
- UI kısmı çok güçlü, tema yönetimi çok iyi
VDL nedir?
VDL ( View Description Language) JSTL'e çok benzer. Faceletler VDL taglarıyla kolayca yazılır.
XHTML nedir?
JSF ile yarattığımız facelet'lar .xhtml dosyaları şeklinde saklanır.
Bir yerde xhtml uzantısı varsa orada JSF kullanılmış demektir.
Tagları mutlaka "/>" ile kapatmak gerek yoksa dosya xhtml formatına uymaz ve geçersiz olur.
xhtmlde normal html yazılabilir ama tercihen hiç yazmamak daha iyidir.
xhtmlde xmlns ile tag library ekleniyor.
html elementleri burada wraplenmiş ya da customize edilmiş.
Arka tarafta bu tagler htmle convert ediliyor.
Browsera normal html gösteriliyor (view source ile incelenebilir)
bütün bunların ortaya çıkış sebebi, html'in özelliklerinin yetersiz kalması.
xhtmlde xmlns ile tag library ekleniyor.
html elementleri burada wraplenmiş ya da customize edilmiş.
Arka tarafta bu tagler htmle convert ediliyor.
Browsera normal html gösteriliyor (view source ile incelenebilir)
bütün bunların ortaya çıkış sebebi, html'in özelliklerinin yetersiz kalması.
ManagedBeans
Eski adı backing beans, yeni adı managed beans.
ManagedBean'ler JSF'deki controller'lardır.
Faces servlet : app serverlar her şeyi servlet olarak tanıdığı için jsf'ler arka tarafta servlete çevrilir.
preferred page language: facelets ve JSP.
Eğer halihazırda bir JSP projesi varsa, bunları aynen jsf ile kullanabilmek için kullanılır.
Normalde facelet seçilir.
Eğer JSP seçersek primefaces desteği de alınamaz.
Faces servlet : app serverlar her şeyi servlet olarak tanıdığı için jsf'ler arka tarafta servlete çevrilir.
preferred page language: facelets ve JSP.
Eğer halihazırda bir JSP projesi varsa, bunları aynen jsf ile kullanabilmek için kullanılır.
Normalde facelet seçilir.
Eğer JSP seçersek primefaces desteği de alınamaz.
Hiç yorum yok:
Yorum Gönder