OLEH : KELOMPOK
MUHAMMAD MAPPANYOMPA
H13114306
MIFTAH FARID
H13114308
JONATHAN HANS
H13114320
1. Bagian Server
Membuat Interface baru dengan nama ChatServerInt
ChatServer> New> Interface
}
public Vector getConnected() throws RemoteException{
return v;
}
}
Penjelasan :
Pada fungsi login akan dicetak Username dari user yang sudah
terkoneksi dengan server, lalu server akan memberitahu "You have
Connected successfully." di client. Setelah itu server akan mempublish ke seluruh
client Username yang baru terhubung dengan server, dan Username akan
ditambahkan ke dalam vector yang dibuat. Dan hasil pengembalian nilai berupa true.
Pada prosedur publish akan mencetak Username yang baru
terhubung ke server ke semua client.
import java.rmi.*;
import java.rmi.server.*;
public class StartServer {
public static void main(String[] args) {
try {
//System.setSecurityManager(new
RMISecurityManager());
java.rmi.registry.LocateRegistry.createRegistry(1099);
8
9
10
11
12
13
14
15
16
}
17 }
Penjelasan :
Pada kelas utama akan di Registry pada port 1099 dan akan digunakan
server dengan penggunaan Naming.rebind("rmi://192.168.1.102/myabc", b);
yang berarti server pada IP 192.168.1.102. Dan setelah server disetting seperti yang diatas
maka akan dicetak [System] Chat Server is ready. Yang menendakan bahwa server
sudah siap digunakan. Sedangkan jika tecetak Chat Server failed: berarti terjadi kesalahan
pada port ataupun ip server yang disetting.
2. Client
Membuat Projek Client dengan nama : ChatClientProj
Kelas ChatClient :
1
2
3
4
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
public class ChatClient extends UnicastRemoteObject implements
ChatClientInt{
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 }
Penjelasan :
import javax.swing.*;
import javax.swing.border.*;
import
import
import
import
java.awt.*;
java.awt.event.*;
java.rmi.Naming;
java.util.*;
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107 }
frame.setVisible(true);
}
JTextArea tx;
JTextField tf,ip, name;
JButton connect;
JList lst;
JFrame frame;
Penjelasan :
Simulasi Program :
Menjalankan Server :
Server dijalankan melalui kelas StartServer :
Penentuan server address harus di tentukan sesuai dengan alamat IP :