İçindekilerGirişİndex
YukarıİlkÖncekiSonraki YokSon
Geriİleri
Yazdır

Servlet ve JSP İlişkisi

JSP İçerisinden JSP veya Servlet Çağırmak

Bir JSP sayfası içinden bir servlet çağırılabilir. Bunun için kullanılan etiket jsp:forward etiketidir.

<jsp:forward page="/servlet/BenimServletim" />

Aynı etiket kullanılarak bir başka JSP sayfasına veya sıradan bir HTML belgesine yönlendirme de yapılabilir :

<jsp:forward page="/xxx/yyy/BenimJSPm.jsp"/>
<jsp:forward page="/xxx/zzz/BenimHTMLm.html"/>

Burada dikkat edilmesi gereken çağrıma işleminin göreli yollarla yapılmasıdır. Mutlak yollar veya URL kullanılanamaz

JSP İçerisine JSP veya Servlet Dahil Etmek

Bir JSP içeriisine servlet dahil edilebilir. Bu işlem servlet çağırmak gibi değildir. Çağırmada kontrol servlete geçer ve çağıran sayfa devreden çıkar. Dahil etmede ise servlet çalıştırılır ve çıktısı çağıran sayfanın içine dahil edilir. Servlete parametre aktarımak param etiketiyle mümkündür.

<servlet  name="BenimServletiminAdı" code="BenimServletiminSınıfı"/>
	<param name="ParametreAdı" value="Değeri">
</servlet>

Çağırma işlemi uzak bir URL'de yapılabilir. Bunun için servlet etiketinde sadece codebase="http://benimsitem.com.tr/yol/BenimServletim" yazmak yeterlidir

Dahil etme işlemi başka JSP’lerle veya HTML'lerle de yapılabilir

<jsp:include page="BenimJSPm.jsp" "/>	
<jsp:include page="BenimHTML.html" "/>

Servlet’ten JSP Çağırmak

Normal koşullarda bir servlet tarayıcı ekranında görülecek bütün HTML kodunu kendisi üretmek durumundadır. Buna alternatif olarak, bir servlet HTML tasarımcılarınca kolaylıkla hazırlanabilecek bir JSP sayfasını çağırabilir. Bunun için standart servlet API'si kullanarak yapılması gereken JSP için istek değerlendiriciyi (RequestDispatcher'ı) bulmak ve forward() yöntemini kullanmak gereklidir.

getServletConfig().getServletContext().getRequestDispatcher("BenimJSPp.jsp").forward(request, response);

Bu standart ama uzun yol yerine genellikle bir çok servlet API'larında bulunan, daha basit ve doğrudan bir sayfayı çağırmaya yarayan callPage() yöntemi kullanılır.

response.callPage("BenimJSPm.jsp",request);

JSP'lere Nesne Aktarmak

Bir servletin işi genellikle sadece bir JSP sayfasını çağırnmak olmaz. Servlet, JSP içerisinde kullanılmak üzere veriyi üretir ve JSP'ye az bir işlemle HTML'e çewrilmek üzere iletir. Servletler genellikle veriyi veritabanı sorguları sonucunda oluştururlar. Bir JSP belgesine herhangi bir nesneyi iletmek için çağrı yapılmadan önce aşağıdakiler yapılır.

response.setAttribute("Anahtar",nesne);

İletilen bu nesneyi JSP tarafında almak için aşağıdaki ifade kullanılır :

nesne=(Sınıf)request.getAttribute("servletName");

İletilen nesne Javada her sınıfın taban sınıfı olan Object olduğundan nesne kendi sınıfına saçılmalıdır (cast edilmelidir). Aynı biçimde bir JSP'den diğerine çağrı yaparken de setAttribute() ve getAttribute() yöntemleri kullanılabilir.

JSP İçerisinde Bean Kullanmak

Bir JSP belgesinde Bean’ler (tek başına kullanıma hazır özel Java nesneleri) kullanılabilir.

<bean name="BeanAdı" type="SınıfAdı">
	<param özellik=”değer”>
</bean>

İçindekilerGirişİndex
YukarıİlkÖncekiSonraki YokSon
Geriİleri
Yazdır