29 Aralık 2010 Çarşamba

Facelet Template Kullanımı Sorunu

Ülkemizde Java Programlama Dili'ni öğrenmeye çalışan tüm öğrenciler ve ilgili insanlar(kaç tane olabilir ki) büyük bir türkçe kaynak sıkıntısı çekmekte. Ben de bir süredir Java'da kendini geliştirmeye uğraş veren insanlar kervanına katıldım. Jsf, jpa ile Java'da Web uygulaması geliştimek için İbrahim Demir'in blog'unu takip ediyordum.

Bu sırada ben ve bazı arkadaşlarımın blog'daki dersleri takip ederken karşılaştığı ve çözmek için oldukça zaman harcadığı sorunlar oldu.

Karşılaştığım ilk sorun yazdığım beanlerdeki void metotları, jsf sayfası üzerinden çağırırken karşılaştığım "Method must have signature "String method()" but has signature "void method()" " warning'i oldu.
Bunu düzeltmek için yazdığımız void metodu String'e çevirip geri dönüş değerini de 'null' yapmamız gerekiyor. Metodu String tanımlamak projemizde performans kaybına neden olabilir ancak; siz de benim gibi bu hatalarla karşılaşmışsanız ve şu an bu yazıy okuyorsanız zaten öğrenme aşamasında olmanız kuvvetle muhtemel :). Ben şimdilik bu performans kaybı durumunu göz ardı ediyorum.

Bunlardan bir diğeri 'facelet ve xhtml' bölümündeki uygulamaları gerçekleştirmeye çalışırken hazırladığım template'i inatla diğer sayfalarımda görüntüleyememem oldu. Bunun çözümü için internette araştırmadığım yer ve yapmadığım şey kalmadı. Benden sonrakiler de aynı zorluğu yaşamasın değil mi ama :D. 

Sorun şu imiş ben Eclipse Helios 3.6.1 ile Majorra 1.2'yi  ve Apache Tomcat 6.0'ı kullanıyordum.
                           Eclipse Helios 3.6.1 ile Majorra 2.0 ve Apache Tomcat 7.0.5 i kullanmaya başladım şimdi uygulamalarım sorunsuz çalışıyor. Jsf kütüphanesi olan Majorra'nın 2.0 versiyonu 1.2'den biraz farklı olsa da bu farklar bize kolaylık sağlıyor. 

Bunun yanında eğer Eclipse Ganimede 3.4 kullanıyorsanız Majorra 1.2 ve Apache Tomcat 6.0 ile sorunsuz şekilde hazırladığınız template'inizi istediğiniz sayfaya çekebilirsiniz.


Hiç yorum yok:

Yorum Gönder