27 Eylül 2006

JAR içinden resim dosyası nasıl okunur?

Bir masaüstü uygulaması yazdınız.Uygulamanızın tüm dosyalarının (java, class, resim dosyaları...) aynı jar içinde olmasını istiyorsunuz.Böyle bir jar dosyası oluşturabilirsiniz fakat kaynak dosyalarını mesela resim dosyalarını direk kodunuzun içinden aşağıdaki gibi:

Icon icon = new ImageIcon("pic1.jpg");

çağıramazsınız.Bunu yapmak için aşağıdaki gibi kodlamanız gerekecek:

// İlk önce ClassLoader objesini alırsınız.
ClassLoader cl = this.getClass().getClassLoader();
// Create icons
Icon saveIcon = new ImageIcon(cl.getResource("images/save.gif"));

İlk önce Bir tane ClassLoader objesi alıyorsunuz.Daha sonra bu obje ile resim dosyasını bir resource olarak programınıza yüklüyorsunuz.Yalnız getResource metodunun içine resim dosyasının tüm yolunu vermeyi unutmayın.

AJAX Frameworks

Merhabalar,
Geçen gün AJAX için yapacağımız çalışma için piyasada var olan ve güzel olan AJAX çatılarını (framework) incelemeye çalıştım.Benim beğendiklerim aşağıdaki gibidir,bilmem siz ne dersiniz:)
  1. Ajax4JSF: JSF (Java Server Faces) çatısı için hazırlanmış.Bedava...Demo!!!
  2. Echo 2: Gayet güzel bir çalışma.Özellikle size sunduğu bileşenler (component) çok hoş.Yalnız biraz yavaş çalışıyor.Bu proje ile javascript, html ve http bilmenize gerek kalmiyor.Çünkü size java uygulamasi yazma olanağı sağlıyor ve bunu web sayfasi olarak sunuyor.Tek gereken bir servlet container ve java bilgisi,ayrıca bedava...Demo!!!
  3. Backbase: Bu projeyi görünce adamlar aşmış dedim.Hoş ve hızlı bileşenlerle ve zeki kullanım kolaylıkları ile gayet güzel bir ajax çatısı olmuş.Bu proje size kendi kütüphanesini sunuyor.Eclipse için plugin desteği var.Ayrıca .net versiyonu da var.Yalnız paralı, 30 günlük deneme süresi var.Demo!!!
  4. DWR (Direct Web Remoting): Bu proje ile java metodlarını bir jsp dosyasından direk çağrabiliyorsunuz.JavaScript fonksiyonlarının içerisinde yazdığınız java metodlarını çağırdığınız için sayfaların yenilenmesine gerek kalmıyor.Ayrıca Struts,JSF,hibernate desteği de var.Demo!!!
  5. ICEFaces: Paralı olan bu ürün size kendi JSF bileşenlerini sunuyor.Kullanımı kolay, görsellik güzel.Demo!!!
  6. JSP Controls Tag Library: Bu proje otomatik olarak tarayıcının (browser) senkron çalışıp çalışmadığını algılıyor ve sayfaları istenilen modda açma olanağı sağlıyor.Bedava...Demo!!!
  7. ThinkCAP JX: Bu ürün size RAD ortamı sağlıyor ve hızlı bir şekilde AJAX uygulamaları geliştirebiliyorsunuz.Eclipse, JBuilder... için plug-in desteği var.Çatısı açık kaynak fakat RAD ortamı para ile satılıyor.Demo!!!
  8. ThinWire: ThinkCAP JX tarzı bir proje.Masaüstü tarzı uygulamalar yapabiliyorsunuz.Ayrıca herşeyi bedava.Demo!!!