Tolong pilih kategori sesuai, jenis posting (pertanyaan atau bukan) dan sertakan tag/topik yang sesuai misal komputer, php, mysql, dll.
Promosi atau posting tidak pada tempatnya akan kami hapus.
Mencantumkan kode program di posting Anda, tolong ikuti aturan yang sesuai, baca http://diskusiweb.com/discussion/39204/aturan-cara-menyisipkan-kode-program-di-diskusiweb

Baca cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

sedikit pencerahannya dari senior" ,,,Chattingan dalam bentuk Desktop....



package chattingan;
import java.net.*;
import java.io.*;
import java.net.*;
public class Chattingan {

public static final int Port =8 ;
public static final String Host = "localhost";
String ketik ;
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

public void terima(){

try{
System.out.println("Menunggu request dari client...");
System.out.println();
ServerSocket objserver = new ServerSocket(Port);
Socket objclient = objserver.accept();

BufferedReader in = new BufferedReader(new InputStreamReader(objclient.getInputStream()));
PrintWriter outs = new PrintWriter(objclient.getOutputStream(),true);

String data = in.readLine();
System.out.append(objclient.getInetAddress()+" : "+data);
System.out.println();

outs.print("-------------------------------------------------diterima");
objclient.close();
objserver.close();

}
catch(IOException ex)
{
System.out.println("ada eror ="+ex);
System.exit(1);

}
System.out.println();

}

public void kirim() {
try{
Socket a = new Socket(Host,Port);
PrintWriter b = new PrintWriter(a.getOutputStream(),true);

BufferedReader in = new BufferedReader(new InputStreamReader(a.getInputStream()));

ketik = input.readLine();
String dataout = ketik;

a.close();

}
catch(IOException ex)
{
System.out.println("ada eror : "+ ex);
System.exit(1);

}
System.out.print("");
}

public static void main(String[] args) {
Chattingan a = new Chattingan();
Chattingan b = new Chattingan();

for (int i=0; i<6000;i++)
{
a = new Chattingan();
b = new Chattingan();
a.terima();
b.kirim();
}
}
}

ini kenapa gak mau ya?

Tanggapan

  • maaf saya lum coba source code nya, cuma mau balik nanya.
    Gak bisa nya kenapa, errornya apa ya?
  • eh maaf...gak ada eror...tapi saatt di chat...gak keluar di komputer tujuaan...kenapa yah?sebaliknya juga..komputer tujuan mau chat ke saya juga gitu....
  • coba host nya pakai ip address komputermu, jangan localhost
  • barusan dicoba...

    hasilnya jalah dan sukses ...tapi saaat saya ketik sesuatu di OUTPUT...itu gak ditransfer ke komputer partner ..kenapa yah...
    dan sebalinya juga...komputer partner ketik juga gk bisa keluar di output komputer saya...

    padahal saya test PING connect ke IP partner lancar koq kk..
    mohon bantuannya yah
  • edited November 2012
    sebelum masuk ke kirim dan terima, saya mau nanya dulu, kenapa itu di buat for < 6000 ?
    kenapa gak pake while ?
    seperti di contoh nya java tutorial http://docs.oracle.com/javase/tutorial/networking/sockets/clientServer.html

    kedua, saya gak bisa test keseluruhan source code,
    maksud saya, karena saya di 1 pc, saya buat 2 project berbeda dari class chatingan itu.
    yg pertama isinya cuma ini di method main:
    for (int i = 0; i&lt;6000; i++) {
    Chattingan a = new Chattingan();
    //a.terima();
    a.kirim();
    }


    yang project kedua di method main nya begini:
    for (int i = 0; i&lt;6000; i++) {
    Chattingan2 a = new Chattingan2();
    a.terima();
    //a.kirim();
    }


    hasil project1:
    Menunggu request dari client...
    test

    hasil project 2:
    Menunggu request dari client...

    /192.168.2.106 : null

    Menunggu request dari client...
  • coba di ubah begini dulu, satu2 dulu, yg pc 1 jadi server, yg pc 2 jadi client.
    contoh:

    ChattinganServer.java
    import java.net.*;
    import java.io.*;
     
    public class ChattinganServer {
     
    public static final int Port = 4444;
    public static final String Host = "127.0.0.1";
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
     
    public void terima() {
    try {
    System.out.println("Menunggu request dari client...");
    System.out.println();
    ServerSocket objserver = new ServerSocket(Port);
    Socket objclient = objserver.accept();
     
    PrintWriter out = new PrintWriter(objclient.getOutputStream(), true);
    BufferedReader in = new BufferedReader(
    new InputStreamReader(
    objclient.getInputStream()));
     
    String s, inputLine;
    s = "diterima";
    out.println(s);
    while ((inputLine = in.readLine()) != null) {
    s = "diterima";
    out.println(s);
    System.out.println("dari client: " + inputLine);
    }
    out.close();
    in.close();
    objclient.close();
    objserver.close();
     
    } catch (IOException ex) {
    System.out.println("ada eror =" + ex.getMessage());
    System.exit(1);
    }
    System.out.println();
    }
     
    public static void main(String[] args) {
    ChattinganServer a = new ChattinganServer();
    a.terima();
    }
    }


    ChattinganClient.java
    import java.net.*;
    import java.io.*;
     
    public class ChattinganClient {
     
    public static final int Port = 4444;
    public static final String Host = "127.0.0.1";
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
     
    public void kirim() {
    Socket clientSocket = null;
    PrintWriter out = null;
    BufferedReader in = null;
    BufferedReader stdIn = null;
    try {
    clientSocket = new Socket(Host, Port);
    out = new PrintWriter(clientSocket.getOutputStream(), true);
    in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
    stdIn = new BufferedReader(new InputStreamReader(System.in));
     
    System.err.println("Connected to " + Host + " on port " + Port);
    String s, fromClient;
     
    while ((s = in.readLine()) != null) {
    System.out.println("dari Server: " + s);
    fromClient = stdIn.readLine();
    System.out.println("Client: " + fromClient);
    out.println(fromClient);
    }
     
    } catch (IOException ex) {
    System.out.println("ada eror : " + ex);
    System.exit(1);
    } finally {
    try {
    out.close();
    in.close();
    stdIn.close();
    clientSocket.close();
    } catch (IOException ex) {
    System.out.println("error: " + ex.getMessage());
    }
    }
    System.out.print("");
    }
     
    public static void main(String[] args) {
    ChattinganClient a = new ChattinganClient();
    a.kirim();
    }
    }
  • kalo di jalanin di 1 pc host nya jadi host = "127.0.0.1";
    kalo di jalanin di lain pc, host di jadikan ip yg jadi server ya.
  • hmm....
    itu for sampai dengan 6000 itu saya copas dari dosen kami..
    saat saya tanya , jawabnya gini...jadi hanya bisa 6000 line yang bisa di terima dari client / server...

    awalmulanya, 
    memang sudah ada 2 project...1 buat client, dan 1 buat server,,
    terus kami para M...siswa ditugaskan membuat sebuah project dimana projject terdapat coding" server dan client,,,jadi misalnya PC-pertama yang meminta ke IP PC-kedua...jadi PC-pertama itu  = (server/client)*maaf saya kurang ngerti soal pengertian client sama server*, dan PC-kedua itu= client/server...jadi kedua PC itu salah satunya dalah SERVER, dan satunya dalah CLIENT gitu lo kk..


  • dah dicoba yg saya ubah?
  • maaf yah...ini project dari dosen saya...ini project server


    package javaapplication17;
    import java.net.*;
    import java.io.*;
    public class server {
    public static final int Port = 77 ;
    public void terima(){
    try{
    System.out.println("menunggu request dari client");
    ServerSocket objserver = new ServerSocket(Port);
    Socket objclient = objserver.accept();

    BufferedReader in = new BufferedReader(new InputStreamReader(objclient.getInputStream()));
    PrintWriter outs = new PrintWriter(objclient.getOutputStream(),true);

    String data = in.readLine();
    System.out.append("Data dari client "+data);
    System.out.println();
    System.out.println("mengirim status di terima ke client");
    outs.print("diterima");
    objclient.close();
    objserver.close();
    }
    catch(IOException ex)
    {
    System.out.println("ada eror ="+ex);
    System.exit(1);

    }
    System.out.println();

    }
    public static void main(String[]args){
    server a = new server();
    for (int i=0; i<6000;i++) {
    a = new server();
    a.terima();
    }
    }

    }

    dan ini project client

    package jaringan;
    import java.net.*;
    import java.io.*;

    public class client1 {
    public static final String Host = "192.168.3.99";
    public static final int Port = 3;

    public void kirim() throws IOException {
    try{
    Socket a = new Socket(Host,Port);
    PrintWriter b = new PrintWriter (a.getOutputStream(),true);
    BufferedReader in = new BufferedReader (new InputStreamReader (a.getInputStream()));
    String dataout = "ka din na bu";
    b.println(dataout);
    System.out.println("Mengirim data (String) "+dataout+" ke server");
    String datain = in.readLine();
    System.out.println("Menerima String "+datain+" dari server");
    a.close();
    }
    catch (IOException ex){
    System.out.println("Error : "+ex);
    System.exit(1);
    }
    System.out.println();
    }

    public static void main(String[] args) throws IOException{
    client1 x = new client1();
    for (int i = 0 ; i < 6000 ; i++)
    {
    x.kirim();
    }
    }
    }




  • eh maaf kk..itu portnya udah saya ganti yah :p..
    cuma saya betul bingung ditugaskan begituan..
    maav yah...
    dan makasih :D
  • maksudnya gimana ya? mesti pake source code itu bikin project nya?
    gak boleh pake source code yang lain nya?
  • bukan, kita buat sendiri juga bisa koq...

    jadi intinya satu project itu codingnya sama di server mau pun di client...jadi saat di client dan server lagi  RUNNING, itu sudah CONNECT ,,jadi tinggal CHATTING aja..
  • itu coding project kk diatas itu , yang tentang  yang
      public void kirim{ 
    isi project ini  erornya ini,,

    run:
    ada eror : java.net.ConnectException: Connection refused: connect
    Java Result: 1
    BUILD SUCCESSFUL (total time: 1 second)


    kenapa yah?


  • ah ya..maaf yang eror itu udah bisa...

    kalau misalnya public void kirim sama public void terima dijadiin satu public class bisa gk?
  • saya deklarasi public static int Port;

    kalau mau input pakai Jbutton...
     isinya gini...

    Port  = JOptionPane.showInputDialog(null,"masukkan port","");
    gini kenapa gk bisa ya?

  • kalau InetAddress.getLocaHost(); bisa di masukkan kedalam sebuah Textfield gak?

    soalnya saya buat sebuah Textfiedl...
    codingnya gini...

    textfield.setText(InetAddress.getLocalHost());//ini gak bisa..
    kalau to.String() //juga gk bisa,.
    ada solusi lain gk yah kk?
  • edited April 2013
    cek dimari gan, siapa tau bisa membantu :

    http://www.diskusiweb.com/discussion/43927/chatting-java-class-server#Item_1

    tetapi yg ane kasi cuma bentuk consul nya sja itu udah termsuk chat room ma private, ente bisa obrak-abrik sesukanya, ntu tugas ane kmaren pas ngambil matkul PBO gan.
    :D
Sign In or Register to comment.