1 för >
java.security.AccessControlException: ta fram förnekat (java.net.SocketPermission 1 27.0.0.1: 4444 förbinder, beslut), på java.security.AccessControlContext.checkPermission (AccessControlConte xt.java: 323) på java.security.AccessController.checkPermission (AccessController.java: 546) på java.lang.SecurityManager.checkPermission (SecurityManager.java: 532) på java.lang.SecurityManager.checkConnect (SecurityManager.java: 1034) på java.net. Socket.connect (Socket.java: 519) på java.net. Socket.connect (Socket.java: 475) på java.net. Socket. (Socket.java: 372) på java.net. Socket. (Socket.java: 186) på ClientApplet.run (ClientApplet.java: 42) på java.lang. Thread.run (Thread.java: 619) Undantag i tråden ”Thread-4” java.lang.NullPointerException på ClientApplet.run (ClientApplet.java: 58) på java.lang. Thread.run (Thread.java: 619) <-/pre>
import java.io.*; import java.applet. Applet; import java.net. *; import javax.swing.*; import java.awt.*; import java.util.*; import java.awt.event.*; allmänhet klassificerar ClientApplet fördjupa JApplet genomför Runnable { offentlig statisk elektricitetJTextField pratstund; offentlig statisk elektricitetJTextArea chattxt; statisk elektricitet PrintStream OS = ogiltigt; statisk elektricitethålighetclientSocket = ogiltigt; offentlig utan laga kraft init () { pratstund = nya JTextField (40); chattxt = nya JTextArea (20.50); chat.addActionListener (nya ActionListener () { offentligt annullera actionPerformed (den ActionEvent händelsen) { System.out.println (chat.getText ()); } }); tillfoga (pratstund); tillfoga (chattxt); chattxt.append (”Hey! ”); } offentligt annullera starten () { ny tråd (denna) .start (); } offentligt annullera körningen () { // meddelar med serveren här Hålighet s = ogiltigt; försök { //s = ny hålighet (getParameteren (”vara värd”), Integer.valueOf (getParameteren (”port”))); s = ny hålighet (”localhost”, 4444); InputStream i = s.getInputStream (); OS = nya PrintStream (clientSocket.getOutputStream ()); int-buf = -1; stunder ((buf = in.read ()) ! = ”. ”) { chattxt.append (”\ n” + buf); } chattxt.append (”\ nIn läste: ” + in.read () + ”\ nServer överförde: ” + in); } fånga (undantag e) { e.printStackTrace (); } slutligen { försök { s.close (); } fånga (IOException e) {} } } } <-/pre>
import java.io.*; import java.net. *; import java.util.*; allmänhet klassificerar serveren { statisk elektricitethålighetclientSocket = ogiltigt; statisk elektricitetServerSocket serverSocket = ogiltigt; statisk elektricitetclientThread t [] = ny clientThread [10]; utan laga kraft huvudsakligt för offentlig statisk elektricitet (stränga args []) { // standardporten int port_number=2222; om (args.length < 1) { System.out.println (”modig server… för start \ nPort numrerar: ”+port_number); } annars { port_number=Integer.valueOf (args [0]) .intValue (); } försök { serverSocket = nya ServerSocket (port_number); System.out.println (”\ n ********************** för *** för *** för ********************** \ n SERVER STARTAD \ n \ n”); } fånga (IOException e) {System.out.println (e);} (riktiga) stunder { försök { clientSocket = serverSocket.accept (); System.out.println (”*** NÅGON FÖRBINDELSE*** \ n”); för (int i=0; i<=9; i++) { om (==null för t [I]) { (t [I] = ny clientThread (clientSocket, t)).start (); avbrott; } } } fånga (IOException e) { System.out.println (e);} } } } klassificera clientThread fördjupa tråden { BufferedReader är = ogiltigt; PrintStream OS = ogiltigt; HålighetclientSocket = ogiltigt; clientThread t []; Slumpmässig rulle = nytt slumpmässigt (); offentlig clientThread (hålighetclientSocket, clientThread [] t) { this.clientSocket=clientSocket; this.t=t; } offentligt annullera körningen () { System.out.println (”kontroll 1”); Stränga fodrar; Stränga känt; int py; försök { System.out.println (”kontroll 2”); är = nya BufferedReader (nya InputStreamReader (clientSocket.getInputStream ())); System.out.println (”kontroll 3”); OS = nya PrintStream (clientSocket.getOutputStream ()); System.out.println (”kontroll 4”); int-px = roll.nextInt (200); //os.println (”skriv in ditt känt. ”); System.out.println (”kontroll 5”); namnge = ”gästen nr.” + roll.nextInt (6); System.out.println (”kontroll 6 \ n”); System.out.println (name+ " har skrivit in leken. Deras attack: ”+ px); System.out.println (”kontroll 7”); för (int i=0; i<=9; i++) om (t [I]! =null&& t [I]! =this) t [I] .os.println (den nya användaren ”+name+” ”för *** A skrev in pratstundrummet!!! ***”); System.out.println (”kontroll 8”); (riktiga) stunder { System.out.println (”kontroll 9”); fodra = is.readLine (); om (line.startsWith (”/quit”)) avbrott; för (int i=0; i<=9; i++) om (t [I]! =null) t [I] .os.println (”< " +name+”: ”+px+ " > ”+line); // någon sade något } för (int i=0; i<=9; i++) om (t [I]! =null&& t [I]! =this) { System.out.println (”\ n” + känt +” har lämnat! \ n "); t [I] .os.println (”*** användaren ”+name+” lämnar pratstundrummet!!! ***”); } os.println (”*** Bye ”+name+” ***”); för (int i=0; i<=9; i++) { om (==this för t [I]) =null för t [I]; System.out.println (”\ nSomeone har lämnat! \ n”); } is.close (); os.close (); clientSocket.close (); } fånga (IOException e) {}; } } <-/pre>