Kayıtlar

JSF Ders23 - Sayfa Navigasyonu (Page Navigation)

   Sayfa navigasyonu (Page Navigation) açık (explicit) veya örtülü (implicit) şekilde yapılabilir. Bu konuda bahsedilecek mevzular Açık (explicit) navigation Örtülü (implicit) navigation Koşullu navigation Statik (Static) navigation Dinamik (Dynamic) navigation Açık (explicit) Navigation ve Örtülü (implicit) Navigation Örtülü (implicit) navigationu zaten tüm projelerde yaptığımız için onu uzun uzun açıklama gereği duymuyorum. Kısaca Managed Bean sınıfları üzerinde yapılan navigasyon olarak aklınızda tutabilirsiniz. Form üzerinde basılan buton (commandButton,commanLink) bir metot çağırıyor ve bu metodun geriye dönüş değeri gideceğiniz sayfanın ismi olmuş oluyor.Bu kadar.  Açık (explicit) navigation faces-config.xml dosyasında belirtilir. <navigation-rule>      <from-view-id> /index.xhtml </from-view-id>          <navigation-case>          <from-outcome> deger1 </from-outcome>          <to-view-id> /sonuc1.xhtml &l

JSF Ders22 - Bean Scopes

    Bean scopeları managed beanin ne kadar süre canlı kalacağını, hangi kullanıcı ve isteklerin önceki bean örneğine erişebileceğini kontrol eder. Bir çok scope türü mevcuttur. Request Scope  (@RequestScope) Session Scope   (@SessionScope) Application Scope  (@ApplicationScope) ViewScoped (@ViewScoped) FlowScoped (@FlowScoped) CustomScoped (@CustomScoped) NoneScoped (@NoneScoped) Bir managed bean sınıfında eğer scope belirtilmezse default olarak RequestScope seçilmiş olur. Request Scope (@RequestScope) Yaşam süresi sadece yapılan istekle sınırlıdır. Aynı kullanıcı aynı sayfa üzerinde yeni bir istek dahi oluştursa yeni bir bean örneklenir. Beane diğer kullanıcılar tarafından erişilemez. Daha önce tanımlanan bean örneğine kimse erişemez. Session Scope  (@SessionScope) Yaşam süresi session (oturum) boyunca devam eder. Aynı kullanıcı farkla sayfalar üzerinde yeni bir istek oluşturursa aynı bean örneği kullanılmaya devam eder. Beane diğer kullanıcılar tarafından eri

JSF Ders21 - Form Tag Elemanları | commandLink, link, outputLink

Resim
<h:commandLink value="diger sayfaya git" action="diger?faces-redirect=true" /> <h:link value="diger sayfaya git" outcome="diger" /> <h:outputLink value="diger.xhtml">diger sayfaya git</h:outputLink> JSF'deki bu elemanlar birbirine çok benzerdir. Bunların farklarından bahsederek konuyu anlatalım. commandLink form içinde kullanılmak zorundadır, diğerlerinde böyle bir zorunluluk yoktur. link outcome kısmında hedef urlyi tespit eder. commandLink action kısmında hedef urlyi tespit eder. outputLink value kısmında hedef url girilir commandLink post isteği gönderir. outputLink ve link get isteği gönderir. commandLink ve link kullanımında value attributeü commandLink in ve link in texti olur. outputlink de ise value atributeü hedef adres olur. commandLink ve link kullanımında hedef dosyanın uzantısının belirtilmesine gerek yoktur. outputlink de ise hedef dosyanın uzantısı belirtilmelidir.

JSF Ders20 - Form Tag Elemanları | inputTextarea

Resim
<h:inputTextArea value="sinifIsmi.degiskenIsmi" cols="50" rows="10"/> JSF'de textarea kullanımı yukarıdaki gibidir. Textarea yazı alanı oluşturmak için kullanılır. cols ve rows parametreleri textareanın sütun ve satır sayısını belirtir. Personel.java package test; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; @ManagedBean @SessionScoped public class Test { private String yorum; public String getYorum() { return yorum; } public void setYorum(String yorum) { this . yorum = yorum; } } index.xhtml <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" xmlns:f= "http://java.sun.com/jsf/core" xmlns:h= "http://java.sun.com/jsf/html" > <h:head></h:head> <h:body> <h:form> Yor

JSF Ders19 - Form Tag Elemanları | graphicImage

Resim
<h:graphicImage library="klasörAdi" name="resimAdi.png"/> JSF'de bir projeye görüntü yukarıdaki tag yardımıyla eklenir. Resimlerin bulunduğu klasör WebContent/resources dizini altında olmalıdır. JSF graphicImage içeren basit bir örnek aşağıda verilmiştir. index.xhtml <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" xmlns:f= "http://java.sun.com/jsf/core" xmlns:h= "http://java.sun.com/jsf/html" > <h:head> <title> index.xhtml </title> </h:head> <h:body> <h:graphicImage library= "avatar" name= "1.png" width= "150" height= "150" /> <h:graphicImage library= "avatar" name= "2.png" width= "150" height= "150

JSF Ders18 - Form Tag Elemanları | selectManyMenu

Resim
<h:selectManyMenu value="#{sinifIsmi.secilenler}">     <f:selectItems value="#{sinifIsmi.secenekler}"/> </h:selectManyMenu> <h:selectManyMenu value="#{sinifIsmi.secilenler}">     <f:selectItem itemValue="secenek1" itemLabel="secenek1"/>     <f:selectItem itemValue="secenek2" itemLabel="secenek2"/> </h:selectManyMenu> JSF'de menü yukarıda görüldüğü üzere iki farklı şekilde oluşturulabilir. Personel.java package test; import java.io.Serializable; import java.util.Arrays; import javax.faces.bean.*; @ManagedBean @SessionScoped public class Personel implements Serializable { private static final long serialVersionUID = 1L ; // diğer üye elemanlar private String[] bilinenDillerim; private String[] bilinmekIstenenDillerim; private String[] bilinmekIstenenDiller = { "Turkce" , "Ingili

JSF Ders17 - Form Tag Elemanları | selectOneMenu

Resim
<h:selectOneMenu value="#{sinifIsmi.secilen}">     <f:selectItems value="#{sinifIsmi.secenekler}"/> </h:selectOneMenu> <h:selectOneMenu value="#{sinifIsmi.secilen}">     <f:selectItem itemValue="secenek1" itemLabel="secenek1"/>     <f:selectItem itemValue="secenek2" itemLabel="secenek2"/> </h:selectOneMenu> JSF'de menü yukarıda görüldüğü üzere iki farklı şekilde oluşturulabilir. Personel.java package test; import java.io.Serializable; import java.util.Arrays; import javax.faces.bean.*; @ManagedBean @SessionScoped public class Personel implements Serializable { private static final long serialVersionUID = 1L ; // diğer üye elemanlar private String evcilHayvan; private String evcilCinsiyet; private String[] evcilCinsiyetler={ "erkek" , "disi" }; // diğer üye metotla