PrimeFaces – 01 – Hello PrimeFaces World

Hamd alemlerin Rabbi olan, insana bilmedigini ogreten Allah’a mahsustur.

…subhâneke lâ ilme lenâ illâ mâ allemtenâ inneke entel alîmul hakîm
Bakara,32

 

PrimeFaces egitim yazi dizisinden herkese merhaba. Bu yazilar boyunca PrimeFaces i inceleyecegiz.

Prerequisite / On Kosul

PrimeFaces tutorial’indan daha iyi sekilde faydalanabilmek icin oncelikle yeterli seviyede bilmemiz gerekenler ;

Primefaces nedir ?

PrimeFaces , acik kaynak kodlu (open source) , JSF component library’sidir. (bilesen kutuphanesidir).
PrimeTek firmasi tarafindan gelistirilmesine devam edilmektedir. Dunya capinda kullanilan ve Turkiye’den cikan bir urundur.

http://www.primetek.com.tr/

2012 yilinda Webrazzinin yapmis oldugu roportaj ;
http://webrazzi.com/2012/01/09/acik-kaynak-kod-ve-turkiyeden-bir-ornek-primefaces/

2013 yilinda Cagatay Civici nin Istanbul Java Gunu’nde Primefaces uzerin vermis oldugu seminer ;
İstanbul Java Günü 2013 – Çağatay Çivici Primefaces

Primefaces resmi sitesi ;
http://www.primefaces.org/

Component’leri kurcalamak icin;
http://www.primefaces.org/showcase/

Primefaces ‘in alternatifi olarak baska urunler de mevcuttur.
Bunlara ornek olarak ;

http://stackoverflow.com/ da “primefaces” , “richfaces” ve “icefaces” icin arama yaptigimizda gelen sonuclar ;

  • PrimeFaces 34,184 results
  • RichFaces 9,542 results
  • IceFaces 2,503 results

Setup/Kurulum

Bu tutorial kapsaminda sunlari kullanacagiz ;

  • Eclipse
  • Maven
  • Apache Tomcat
  • JSF Reference Implementation ; Mojarra

PrimeFaces icin gerekli olan jar dosyasini , manuel olarak ya da Maven aracigiliyla projemize
dahil edebiliriz.

http://www.primefaces.org/downloads

<dependency>  
    <groupId>org.primefaces</groupId>  
    <artifactId>primefaces</artifactId>  
    <version>6.0</version>  
</dependency>  

Yeni bir Dynamic Web Project olusturalim , daha sonrasinda projemize sag tiklayip Convert To Maven Project diyerek projemizi Maven projesi olarak donusturelim.

NOT : Burada detaydan bahsetmeyecegim. Yeni Dynamic Web Project olusumu , tomcat kurulumu , dependency eklenmesi gibi konulari Servlet&JSP ve Maven yazilarimda bahsettim.

Servlet & JSP – 03 – HelloServletWorld
Servlet & JSP – 04 – Apache Tomcat

NOT 2 :  Genel onerim Java Web’e giris olarak Servlet & JSP ile baslanmali sonrasinda JSF ve Primefaces sirasiyla daha kolay ogrenilebilir.

pom.xml
En temel ihtiyacimiz olan dependency/jar tanimlamalari ;

...
<dependencies>
	<dependency>
		<groupId>com.sun.faces</groupId>
		<artifactId>jsf-api</artifactId>
		<version>2.2.13</version>
	</dependency>

	<dependency>
		<groupId>com.sun.faces</groupId>
		<artifactId>jsf-impl</artifactId>
		<version>2.2.13</version>
	</dependency>

	<dependency>
		<groupId>org.primefaces</groupId>
		<artifactId>primefaces</artifactId>
		<version>6.0</version>
	</dependency>

</dependencies>
...

Namespaces

JSF Facelet sayfalarimizda cesitli tag library’ler kullanabiliyorduk.
xlmns:h , JavaServer Faces HTML Tag Library ve xmlns:p , Primefaces tanimini xhtml sayfamiza eklememiz yeterli olacaktir.

<!DOCTYPE html>
<html xmlns="http://www.w3c.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui">
...
...

</html>

@ManagedBean

Bean; property/ozelliklerin tanimlandigi ve getter/setter metotlarindan olusan , public no-argument yapilandiricya sahip Java siniflaridir.
Bu no-argument yapilandirici JSF tarafinda bean objesi olusturulurken kullanilir. Bu nedenle mutlaka tanimlanmalidir.

Managed Bean , JSF tarafindan ulasilan/yonetilen/manage Java bean’leridir.

Daha fazla bilgi icin ;
http://www.injavawetrust.com/hello-jsf-world/

Managed Bean basligini inceleyin.

PersonDataBean.java

package _01.hello.primefaces;

import javax.faces.bean.ManagedBean;

@ManagedBean(name = "personDataBean")
public class PersonDataBean {

	private String name;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
}

login.xhtml
h:inputText ve h:commandButton‘a benzer sekidle p:inputText ve p:commandButton‘i kullanabiliriz.

<!DOCTYPE html>
<html xmlns="http://www.w3c.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
	<h:form>
	    <p:inputText value="#{personDataBean.name}" placeholder="Enter Name" />
	    <p:commandButton value="Login" action="welcome.xhtml" />
	</h:form>
</h:body>
</html>

welcome.xhtml

<!DOCTYPE html>
<html xmlns="http://www.w3c.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>

	<h1>welcome , #{personDataBean.name}</h1>

</h:body>
</html>

Project Structure

Eclipse , Proje yapimiz ;

project structure

 

Run Application

Uygulamamizi calistiralim ;

login primefaces

input alanini doldurup Login butonuna tikladigimizda ;

welcome primefaces

Source Code

Github uzerinden projeyi indirebilirsiniz ;
injavawetrust-primefaces-tutorial

Yazimi burada sonlandiriyorum.
Herkese Bol Javali Gunler dilerim.
Be an oracle man , import java.*;
Levent Erguder
OCP, Java SE 6 Programmer
OCE, Java EE 6 Web Component Developer

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *