Membuat JAVA Aplikasi Kartu JAVA
Teknologi Java kartu menyediakan lingkungan yang aman bagi aplikasi yang berjalan pada smart card dan perangkat lain dengan sangat terbatas memori dan kemampuan pengolahan. Kartu Java juga mencakup seperangkat alat yang unik untuk Mengembangkan produk baru.
Alat dan Bahan :
- Sun Java (TM) Wireless Toolkit 2.5.2_01 for CLDC
atau bisa gunakan yang lainnya. Untuk menginstallnya, kita harus install
dulu jdk.
- Notepad++.
Langkah – Langkah :
- Kita
jalankan dulu Sun Java (TM) Wireless Toolkit 2.5.2_01 for CLDC. Setelah
itu, klik New Project, di ProjectName kita ketikkan nama project kita,
misalnya AplikasiNilai, di MIDlet Class Name ketikkan tulisan yang sama,
Lalu klik Create Project.
Selanjutnya
akan muncul kotak dialog setting, kita klik OK saja. Setelah itu akan tampil
tulisan
Gambar saat pembuatan project baru
Creating project “java_card”
Place Java source files in “ C:\MyDocuments\ Java\j2mewtk\252\apps\java_card\src”
Ket: Disinilah tempat kita
menyimpan source atau koding program yang kita buat yaitu pada direktori SRC
Place Aplication resource files in
“ C:\MyDocuments\ Java\j2mewtk\252\apps\java_card\res”
Ket: Disinilah tempat kita
menyimpan file gambar atau animasi yang kita buat yaitu pada direktori RES
Place Aplication library files in “ C:\MyDocuments\ Java\j2mewtk\252\apps\java_card\lib”
Ket: Disinilah tempat kita
menyimpan file fungsi yang kita buat yaitu pada direktori LIB
2. Kita buka notepad++ atau aplikasi
notepad yang anda punya, ketikkan source code berikut:
java_card.java :
import java.io.*;
import javax.microedition.io.Connector;
import javax.microedition.jcrmi.JavaCardRMIConnection;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import com.sun.javacard.samples.RMIDemo.Purse;
public class java_card extends MIDlet implements CommandListener,
Runnable {
private final String kRMIURL =
"jcrmi:0;AID=a0.0.0.0.62.3.1.c.8.1";
private JavaCardRMIConnection
mConnection;
private Display mDisplay;
private Form mMainForm;
private Command mExitCommand;
private Command mGoCommand;
private Command mBackCommand;
private Form mProgressForm;
public java_card() {
mExitCommand = new
Command("Exit", Command.EXIT, 0);
mGoCommand = new
Command("Go", Command.SCREEN, 0);
mBackCommand = new
Command("Back", Command.BACK, 0);
mMainForm = new
Form("JCRMI Example");
mMainForm.append("Press Go to use the SATSA-JCRMI API " +
"to connect to a
card application.");
mMainForm.addCommand(mExitCommand);
mMainForm.addCommand(mGoCommand);
mMainForm.setCommandListener(this);
}
public void startApp() {
mDisplay =
Display.getDisplay(this);
mDisplay.setCurrent(mMainForm);
}
public void pauseApp() {
}
public void destroyApp(boolean
unconditional) {
}
public void
commandAction(Command c, Displayable s) {
if (c == mExitCommand) {
notifyDestroyed();
} else if (c ==
mGoCommand) {
mProgressForm = new
Form("Working...");
mDisplay.setCurrent(mProgressForm);
Thread t = new
Thread(this);
t.start();
} else if (c ==
mBackCommand) {
mDisplay.setCurrent(mMainForm);
}
}
public void run() {
try {
setProgress("Opening a connection");
mConnection =
(JavaCardRMIConnection)Connector.open(kRMIURL);
setProgress("Getting an initial reference");
Purse purse = (Purse)mConnection.getInitialReference();
short balance =
purse.getBalance();
setProgress("Balance = " + balance);
setProgress("Crediting 20");
purse.credit((short)20);
setProgress("Debiting 15");
purse.debit((short)15);
balance =
purse.getBalance();
setProgress("Balance = " + balance);
setProgress("Setting account number to 54321");
purse.setAccountNumber(new
byte[] { 5, 4, 3, 2, 1 });
setProgress("Closing connection");
mConnection.close();
mProgressForm.setTitle("Working...done.");
mProgressForm.addCommand(mBackCommand);
mProgressForm.setCommandListener(this);
} catch (Exception e) {
try {
mConnection.close();
} catch (Throwable t)
{
}
Form f = new
Form("Exception");
f.append(e.toString());
f.addCommand(mBackCommand);
f.setCommandListener(this);
mDisplay.setCurrent(f);
}
}
private void
setProgress(String s) {
StringItem si = new
StringItem(null, s);
si.setLayout(Item.LAYOUT_2
| Item.LAYOUT_NEWLINE_AFTER);
mProgressForm.append(si);
}
}
Purse.java :
package com.sun.javacard.samples.RMIDemo;
import java.rmi.*;
import javacard.framework.*;
public interface Purse extends Remote {
public static final short UNDERFLOW
= (short)0x6000;
public static final short
OVERFLOW = (short)0x6001;
public static final short
BAD_ARGUMENT = (short)0x6002;
public static final short
MAX_AMOUNT = (short)400; // for whatever reason
public short getBalance()
throws RemoteException;
public void debit(short m)
throws RemoteException, UserException;
public void credit(short m)
throws RemoteException, UserException;
public void
setAccountNumber(byte[] number) throws RemoteException, UserException;
public byte[]
getAccountNumber() throws RemoteException;
}
Simpan
program tersebut pada direktori src seperti di atas dengan nama javacard.java
dan purse.java (nama file harus sama dengan nama kelas pada saat kita membuat
new project).
Selanjutnya
Kita kembali lagi ke Sun Java (TM)
Wireless Toolkit 2.5.2_01 for CLDC.
3. Di
sini, kita klik Build untuk mengetahui apakah program yang kita buat sudah
benar atau belum. Jika masih terdapat kesalahan maka perhatikan kesalahannya
pada baris kesalahan dan lokasi kesalahan yang ditunjukan pada layar konsul.
Perbaiki kesalahan program tersebut hingga selesai simpan dan ulangi Build
kembali. Setelah proses build selesai jika tidak terdapat kesalahan, klik Run.
Kita bisa coba jalankan aplikasi buatan kita.
Langkah
selanjutnya adalah membuat Package. Untuk menjalankan aplikasi ini di handphone
kita harus membuat file .jad , file inilah yang nantinya akan kita pindahkan ke
handphone dan kita instal di handphone.
Langkah-langkah
pembuatan file .jad
- pilih Project
- pilih Package
- pilih Create Package
Maka
file .jad akan tercipta, dan file tersebut disimpan di dalam direktori bin
Sekian Cara Membuat Java Aplikasi Kartu JAVA semoga Bermanfaat jgn lupa tinggalkan komentar dan share artikelnya Terimakasih.
0 Response to "Membuat JAVA Aplikasi Kartu JAVA"
Post a Comment