Daha önce “Java Servlet Container ve Jetty Nedir?” diye bir makale yazmıştım. Sınavlarım, yetiştirmem gereken projeler ve yazılar dolayısla ilgili ikinci yazımı henüz ekliyorum. Bu yazıda Jetty üzerinde örnek bir uygulama kurulumu yapacağız. Gelin isterseniz başlayalım:
Jetty JSP ve Servlet desteği olan açık kaynak kodlu bir web sunucudur. EJB3, Java Server Faces (JSF), AJAX, Google Web Toolkit (GWT) gibi teknolojileri de destekler. Bilgisayarımıza JSP destekli ve aynı zamanda Apache’yle birlikte gelen Jetty kurmak için öncelikle Jetty Download sayfasından programı indirin. Ben 7.0 sürümü henüz tam olarak hazır olmadığı için 6.1 sürümünü indirdim. İndirmiş olduğunuz ZIPli dosyayı bir klasöre çıkarttığınızda içerisinde 20 çivarında farklı dosya göreceksiniz. Hangi klasörün ne işe yaradığını öğrenmek için buraya bakabilirsiniz. 
Jetty çalıştırmak için kendi kalsörü aktif haldeyken
java -jar start.jar etc/jetty.xml
yazın. Jetty çalıştırmak veya durdurmak için vermeniz gereken komutlar web sitesinde yazıyor. Artık Jetty’i çalıştırdığımıza göre, http://localhost:8080 adresinden sunucumuza ulaşabiliriz. Hazır kurulu olarak gelen bir kaç uygulamaya göz atabilirsiniz. 
Örnek Uygulama Kurulumu
Java Web uygulaması standartlarından olan WAR (web application archive olarak adlandırılan dosya biçimidir. İçerisinde derlenmiş kodlar, java sınıf kütüphaneleri gibi çeşitli bilgileri kapsar. Daha fazla bilgi burada ) dosyası oluşturarak işe başlamalısınız. WAR dosyalarını “\webapps” klasörüne atarak Jetty otamatik dosyaları bulmasını sağlayabilirsiniz.
Daha önce ne yapmam gerektiği konusunda hiç bir bilgim olmadığını ve benim gibi herkesin rahatlıkla anlayabileceği basit bir örnek bulabilmek için uğraşlarım sonucunda, internetten bulduğum bu küçük uygulamayı sunucumuza yükleyeceğiz. Dosyayı indirdikten sonra içerisindeki .war uzantılı dosyayı “\webapps” içerisine yüklüyoruz. Böylece birazdan oluşturacağimiz .xml dosyasının içerisinde belirteceğimiz uygulamaları içeren arşiv dosyasını sunucumuza eklemiş olduk.
Şimdi yapmamız gereken uygulamanın çalışabilmesi için, “\contexts” klasörü içerisinde aşağıdaki kodları içeren “demo.xml” dosyasını oluşturmak:
<?xml version=”1.0″ encoding=”ISO-8859-1″?>
<!DOCTYPE Configure PUBLIC “-//Mort Bay Consulting//DTD Configure//EN” “http://jetty.mortbay.org/configure.dtd”>
<!– ==================================================================
Configure and deploy the demo web application in $(jetty.home)/webapps/demo
===================================================================== –>
<Configure class=”org.mortbay.jetty.webapp.WebAppContext”>
<!– – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - –>
<!– Required minimal context configuration : –>
<!– + contextPath –>
<!– + war OR resourceBase –>
<!– – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - –>
<Set name=”contextPath”>/burak</Set>
<Set name=”war”><SystemProperty name=”jetty.home” default=”.”/>/webapps/servlet.war</Set>
</Configure>
Dikkat ederseniz, contextPath yolunu burak olarak değiştirdim. Çünkü Jetty ile birlikte gelen “demo” adındaki örnek uygulama ile çakışıyorlardı. Sizde burada istediğiniz ismi kullanabilirsiniz. “.war” dosyasının içermiş olduğu Java Sever Pages ve Java Servlet dosyalarına artık vermiş olduğumuz isimden ulaşabilir. Yani “burak” için, http://localhost:8080/burak/ adresini yazmak yeterli olacaktır.
Kaynaklar:
http://www.itjungle.com/fhg/fhg082708-story02.html
http://docs.codehaus.org/display/JETTY/Configuring+Jetty
http://www.itjungle.com/fhg/fhg120705-story02.html
http://docs.codehaus.org/display/JETTY/Installing+Jetty-6.1.x
http://docs.codehaus.org/display/JETTY/Running+Jetty-6.1.x
http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/WebComponents3.html













2 Responses to “Jetty Üzerinde Örnek JSP Uygulaması Kurulumu”
Ali E.İMREK
2 months ago
Bir GWT projesi için sunucu tarafında ne kullanabilirim diye araştırıyordum, yolum buraya düştü.
Daha önce ne GWT nede Java tecrübem oldu, yani her şey çok yabancı geliyor şimdilik, şu konularda sizin öneriniz ne olur?
-Daha önce PHP kulanmıştım, acaba GWT’de XML-RPC kullanıp PHP’mi yazayım? Açıkçası hiç istemiyorum ama Servlet’i tanımadığımdan karşılaştırma yapamıyorum.
-Jetty, Tomcat, Apache, Servlet vs…. Kafam çok karıştı :) GWT İçin basit bir SQL veritabanı kullanmak için minimum hangi araçlar lazım?
-Geliştirmeyi Pardus üzerinde yapacağım, bu açıdan başka bir öneriniz var mı?
Şimdiden teşekkürler…
burak_yuce
2 months ago
Merhaba Ali,
GWT hakkında daha önce bir deneyimim olmadı ama genel olarak şunları önerebilirim:
PHP ile proje geliştirirsen çok daha kolay sunucu bulabilirsin. Servlet’de tasarım yapmak PHP’ye göre daha zordur. İlk önce tasarımı yapıp sonra servlet’e aktaracaksın, php de ise tasarımı kodların içine gömebilirsin. Gerçi bu iş jsp ile de yapılabilir ama dediğim gibi piyasada uygun maliyetli java sunucu bulmak zor olacaktır. Ayrıca php çok daha hızlı çalışır. Projeni veritabanına bağlamak ise çok daha kolay ve sorunsuzdur. Java tarafında her veritabanı için ise ayrı bir driver kullanmak zorunda kalacaksın.
Son olarak ise bu işe yeni başlayacağından yararlanacağın kaynakları düşünmelisin. Java da türkçe kaynak neredeyse yok gibiyken php de çok daha kolay kaynak bulabilir yardım alabilirsin.
Kolay gelsin.