IRC ve mIRC Kullanıcılarının Buluşma Noktası
  Mobil Sohbet, Sohbet ve Sohbet Odaları




Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 21 Mayıs 2012, 11:38   #1
Çevrimdışı
Java Applet ‘ten Javascript erisimi




Uygulamaların kullanıcı (client) tarafında çalışacağı durumlarda çoğu kişi applet ile çözüm bulur. Bu gibi durumlarda verilerin appletten javascript e aktarılması gibi bir istek doğması çok normaldir. Böyle bir durumu örneklemeye çalışacağım.

Appletten javascript e erişmek istediğimizde, JSObject kütüphanesini kullanmaktayız. Bu kütüphaneye “netscape.javacript.JSObject” yolunda ulaşmak mümkündür. Fakat bu kütüphaneye classpath ten direk erişmek mümkün değildir, windows kullanıcıları için,

C:\Program Files\Java\jre\lib\plugin.jar

linux kullanıcıları için Open-jdk yüklediklerinde,

/usr/shared/icedtea-web/plugin.jar

manuel olarak jdk kurduklarında ise,

/opt/jdk/jre/lib/plugin.jar

yolundan erişilebilir. Bu kütüphaneyi projemize dahil ettikten sonra appletimizi oluşturmaya başlayabiliriz.
Applet için ben aşağıdaki gibi örnek bir kod yazdım, bu kodda applete bir buton ekledim, butona tıklandığında jsObject objesiyle javascript’e bir string değer gönderdim.

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JTextArea;
import netscape.javascript.JSObject;

public class 
AppletToJavascript extends JApplet implements ActionListener{
    private static final 
long serialVersionUID 1L;
    
JSObject jsObject;
    
JButton btnJavascript null;
    
JTextArea textArea null;
    public 
void init(){
        
this.setLayout(new FlowLayout());
        
btnJavascript = new JButton("Javascript");
        
btnJavascript.addActionListener(this);
        
this.add(btnJavascript);
    }
    public 
void actionPerformed(ActionEvent action){
        if(
action.getSource() == btnJavascript){
            
jsObject JSObject.getWindow(this);
            
jsObject.call("callApplet", new String[]{"kodlapaylas.com"});
        }
    }


Applet sınıfını oluşturduktan sonra sıra HTML sayfasını oluşturmaya geliyor, bunun için ilk önce appleti html sayfasına gösteriyoruz ve html’den appleti kullanacak gerekli javascript kodunu yazıyoruz. Ben bu örnekte çok basit olarak şöyle bir şey yazdım;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<html>
<
script language="javascript">
    function 
callApplet(text){
        
document.getElementById("deger").value text;
    }
</script>
<head>
    <title>Applet Javascript Test</title>
</head>
<body>
        <div>
            <applet width="150" height="50" code="com.wordpress.erenbasaran.AppletTest.AppletToJavascript"
 archive="applet1.jar, plugin.jar">
                <param name="mayscript" value="true" />
            </applet>
            <input type="textarea" id="deger" rows="20" cols="80"/>
        </div>
    </body>
    </html> 

Bunların ardından oluşturduğumuz internet sayfasını çalıştırdığımızda, applette oluşturduğumuz buton gelecektir. Bu butona tıkladığımızda ise html sayfasında oluşturduğumuz textarea ya applet kodunda yazdığımız string verisi yazacaktır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Uygulamaların kullanıcı (client) tarafında çalışacağı durumlarda çoğu kişi applet ile çözüm bulur. Bu gibi durumlarda verilerin appletten javascript e aktarılması gibi bir istek doğması çok normaldir. Böyle bir durumu örneklemeye çalışacağım.

Appletten javascript e erişmek istediğimizde, JSObject kütüphanesini kullanmaktayız. Bu kütüphaneye “netscape.javacript.JSObject” yolunda ulaşmak mümkündür. Fakat bu kütüphaneye classpath ten direk erişmek mümkün değildir, windows kullanıcıları için,

C:\Program Files\Java\jre\lib\plugin.jar

linux kullanıcıları için Open-jdk yüklediklerinde,

/usr/shared/icedtea-web/plugin.jar

manuel olarak jdk kurduklarında ise,

/opt/jdk/jre/lib/plugin.jar

yolundan erişilebilir. Bu kütüphaneyi projemize dahil ettikten sonra appletimizi oluşturmaya başlayabiliriz.
Applet için ben aşağıdaki gibi örnek bir kod yazdım, bu kodda applete bir buton ekledim, butona tıklandığında jsObject objesiyle javascript’e bir string değer gönderdim.

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JTextArea;
import netscape.javascript.JSObject;

public class 
AppletToJavascript extends JApplet implements ActionListener{
    private static final 
long serialVersionUID 1L;
    
JSObject jsObject;
    
JButton btnJavascript null;
    
JTextArea textArea null;
    public 
void init(){
        
this.setLayout(new FlowLayout());
        
btnJavascript = new JButton("Javascript");
        
btnJavascript.addActionListener(this);
        
this.add(btnJavascript);
    }
    public 
void actionPerformed(ActionEvent action){
        if(
action.getSource() == btnJavascript){
            
jsObject JSObject.getWindow(this);
            
jsObject.call("callApplet", new String[]{"kodlapaylas.com"});
        }
    }


Applet sınıfını oluşturduktan sonra sıra HTML sayfasını oluşturmaya geliyor, bunun için ilk önce appleti html sayfasına gösteriyoruz ve html’den appleti kullanacak gerekli javascript kodunu yazıyoruz. Ben bu örnekte çok basit olarak şöyle bir şey yazdım;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<html>
<
script language="javascript">
    function 
callApplet(text){
        
document.getElementById("deger").value text;
    }
</script>
<head>
    <title>Applet Javascript Test</title>
</head>
<body>
        <div>
            <applet width="150" height="50" code="com.wordpress.erenbasaran.AppletTest.AppletToJavascript"
 archive="applet1.jar, plugin.jar">
                <param name="mayscript" value="true" />
            </applet>
            <input type="textarea" id="deger" rows="20" cols="80"/>
        </div>
    </body>
    </html> 

Bunların ardından oluşturduğumuz internet sayfasını çalıştırdığımızda, applette oluşturduğumuz buton gelecektir. Bu butona tıkladığımızda ise html sayfasında oluşturduğumuz textarea ya applet kodunda yazdığımız string verisi yazacaktır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
  Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
radyo44.com.tr
Cevapla

Etiketler
applet, erisimi, java, javascript, kodlapaylas, kodlapaylas.com, ‘ten

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Java AppLeT HeLp! OnE_D4y HTML/CSS/JavaScript 6 07 Şubat 2009 14:49