Pytanie : Jawa Klient Applet - Wiadomość od serwer WSZYSTKIE klient

OK więc I miewać to ale wtedy I decydować ono więc ono notiify wszystkie związany klient który someone opuszczać. Wtedy I musieć w ten sposób I ratować ono. Ostatecznie ono dostać the punkt dokąd ono być wielostrzałowy wiadomość więc I właśnie móc CTRL+Z mój sposób plecy….

In the serwer tutaj być the kod który być przypuszczać tutaj:

From SERVER.JAVA
1:
2:
3:
4:
5:
6:
7:
 dla (int i=0; i<=9; i++) {
				jeżeli (t [i]! =null && t [i]! =this) {
				    t [i] .os.println (name+ " mieć joined.");
				}
	}

	    System.out.println (name+ " wchodzić do the gra. Ich atak: "+ px);


and tutaj być the klient kawałek kod który być przypuszczać tutaj ten wiadomość…

1:
2:
3:
 podczas gdy ((responseLine = is.readLine ()) ! = null) {
		System.out.println ("Klient >" + responseLine);
	    }


So jasny… pomoc?

Server.java:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
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:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
import java.io.*;
importowy java.net. *;
importowy java.util.*;
importowy java.util. Przeszukiwacz;

społeczeństwo klasowy Serwer {

    statyczny Gniazdkowy clientSocket = null;
    statyczny ServerSocket serverSocket = null;
    ładunek elektrostatyczny Smyczkowy responseLine;
   	jawny statyczny statyczny stillServ = fałszywy;
   	jawny statyczny Przeszukiwacz przeszukiwacz = nowy Przeszukiwacz (System.in);

	statyczny clientThread t [] = nowy clientThread [10];


    jawny statyczny kawitacyjny magistrala (Smyczkowy args []) {

	// The brak port



	int port_number=4444;

	jeżeli (args.length < 1)
	    {
		System.out.println ("Zaczynać gemowy serwer… \ nPort liczba: "+port_number);

	    } inny {
		port_number=Integer.valueOf (args [(0)]) .intValue ();
	    }

        próba {
	    serverSocket = nowy ServerSocket (port_number);
	    System.out.println ("\ n ********************** \ n *** SERWER ZACZYNAĆ *** \ n ********************** \ n");
        }
        chwyt (IOException e)
	    {System.out.println (e);}


			  /** System.out.print ("Wchodzić Do rozkaz: ");
			   	Smyczkowy hasło = scanner.nextLine ();

			   	jeżeli (password.equalsIgnoreCase ("sekret")) {
			   	    System.out.println ("Powitanie aplikacja Java");
			   	}
**/

	podczas gdy (true) {




	    próbować {
		clientSocket = serverSocket.accept ();
		dla (int i=0; i<=9; i++) {
		    jeżeli (t [i] ==null)
			{
			    (t [i] = nowy clientThread (clientSocket, t)).start ();
			    przerwa;
			}
		}
	    }
	    chwyt (IOException e) {
		System.out.println (e);}
	}
    }
}

klasowy clientThread przedłużyć Nić {

	BufferedReader być = null;
    PrintStream os = null;
    Gniazdkowy clientSocket = null;
    clientThread t [];
    Przypadkowy rolka = nowy Przypadkowy ();

    jawny clientThread (Gniazdkowy clientSocket, clientThread [] t) {
	this.clientSocket=clientSocket;
        this.t=t;
    }

    jawny kawitacyjny bieg ()
    {
System.out.println ("Obecnie biegać… ");
	Smyczkowy linia;
        Smyczkowy imię;

        int py;
	próba {

	    być = nowy BufferedReader (nowy InputStreamReader (clientSocket.getInputStream ()));

	    os = nowy PrintStream (clientSocket.getOutputStream ());

	    int px = roll.nextInt (200);
	    //os.println ("Wchodzić Do twój name.");

	    imię = "Gość #" + roll.nextInt (6);

	    	    dla (int i=0; i<=9; i++) {
				jeżeli (t [i]! =null && t [i]! =this) {
				    t [i] .os.println (name+ " mieć joined.");
				}
	}

	    System.out.println (name+ " wchodzić do the gra. Ich atak: "+ px);

	    dla (int i=0; i<=9; i++)
		jeżeli (t [i]! =null && t [i]! =this)
		    t [i] .os.println ("*** A nowy użytkownik "+name+" wchodzić do the gadka pokój!!! *** ");

	    podczas gdy (true) {

		linia = is.readLine ();
                jeżeli (line.startsWith ("/quit")) przerwa;
		dla (int i=0; i<=9; i++)
		    jeżeli (t [i]! =null) t [i] .os.println ("< " +name+": "+px+ " > "+line); // coś powiedzieć coś
	    }
	    dla (int i=0; i<=9; i++)
		jeżeli (t [i]! =null && t [i]! =this) {
		System.out.println ("\ n" + imię +" opuszczać! \ n ");
		    t [i] .os.println ("*** The użytkownik "+name+" opuszczać the gadka pokój!!! *** ");
		}

	    os.println ("*** Walkower "+name+" *** ");

	    dla (int i=0; i<=9; i++) {
		jeżeli (t [i] ==this) t [i] =null;
		System.out.println ("\ nSomeone opuszczać! \ n");
	}

	    is.close ();
	    os.close ();
	    clientSocket.close ();

	}
	chwyt (IOException e) {};



    }
}


ClientApplet.java
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
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:
import java.io.*;
importowy java.applet. Applet;
importowy java.net. *;
importowy javax.swing.*;
importowy java.awt.*;
importowy java.util.*;
importowy java.awt.event.*;

społeczeństwo klasowy ClientApplet przedłużyć JApplet narzędzie Klasowy {

      jawny statyczny JTextField gadka;
      jawny statyczny JTextArea chattxt;
      jawny statyczny PrintStream os = null;
      statyczny Gniazdkowy clientSocket = null;
      statyczny BufferedReader być = null;

      jawny kawitacyjny init () {

		  System.out.println ("****** Powitanie the gemowy ****** ");

            gadka = nowy JTextField (40);
            chattxt = nowy JTextArea (20,50);

            chat.addActionListener (nowy ActionListener () {
               jawny pustka actionPerformed (ActionEvent wydarzenie) {
                    System.out.println (chat.getText ());
               }
             });
            dodawać (gadka);
            dodawać (chattxt);
               chattxt.append ("Hej! ");
      }

      jawny kawitacyjny początek () {
         nowy Nić (.start) .start ();
      }


      jawny kawitacyjny bieg () {


Nasadka s = null;

próba {
//s = nowy Nasadka (getParameter ("gospodarz"), Integer.valueOf (getParameter ("port")));
s = nowy Nasadka ("localhost", 4444);
InputStream w = s.getInputStream ();

os = nowy PrintStream (s.getOutputStream ());
int buf = -1;


Smyczkowy responseLine;

	    podczas gdy ((responseLine = is.readLine ()) ! = null) {
		System.out.println ("Klient >" + responseLine);

	    }

podczas gdy ((buf = in.read ()) ! = -1) {

chattxt.append ("\ n" + buf);


}
chattxt.append ("\ nIn czytać: " + in.read () + "\ nServer wysyłać: " + wewnątrz);

} chwyt (Wyjątek e) {
e.printStackTrace ();
}
w końcu {
próba {
	s.close ();
	} chwyt (IOException e)
	{}
}



}
}

Odpowiedź : Jawa Klient Applet - Wiadomość od serwer WSZYSTKIE klient

> InputStream w = s.getInputStream ();

zmieniać to:

w = nowy BufferedReader (nowy InputStreamReader (s.getInputStream ()));

I usuwać the następujący, łatwy the odpowiedź od serwer linia linia using "w"

> podczas gdy ((buf = in.read ()) ! = -1) {
> chattxt.append ("\ n" + buf);
> }
> chattxt.append ("\ nIn czytać: " + in.read () + "\ nServer wysyłać: " + wewnątrz);
Inne rozwiązania  
 
programming4us programming4us