security - java applet socket connection issue -


the code have used socket communication works in program run in command prompt, when same code used in applet embedded in webpage there security issue. not connect... please me out, need finish in 3 days.... server:

    public void run() {     try     {         serversocket s1 = new serversocket(5555); // create server socket , bind port number.          socket s2 = s1.accept(); // make server listen connection.          datainputstream in = new datainputstream(s2.getinputstream());         printstream out = new printstream(s2.getoutputstream());         while(true)         {             char[] buf = new char[150];             string line = in.readutf(); // wait client send line of text.             if(line.equals("send"))             {                 for(int i=0;i<150;i++)                     buf[i]=0;                 if(traffic1.s1wiut) buf[0]='1';                 if(traffic1.s1wist) buf[1]='1';                 if(traffic1.s1wirt) buf[2]='1';                 if(traffic1.s1silt) buf[3]='1';                 if(traffic1.s1siut) buf[4]='1';                 if(traffic1.s1sirt) buf[5]='1';             }             string line1 = new string(buf);             out.println(line1); // send data client.             out.flush(); // flush stream ensure data reaches other end.         }     } 

client side:

    public void run() {      while(true)     {         int serverport = 5555; // port number on server listening.          try         {             inetaddress ipaddress = inetaddress.getlocalhost(); // create object represents above ip address.              socket socket = new socket(ipaddress,serverport); // create socket server's ip address , server's port.              datainputstream in = new datainputstream(socket.getinputstream());             printstream out = new printstream(socket.getoutputstream());              while(true)             {                 char[] buf = new char[150];                 string line = "send"; // request string send server.                 out.println(line); // send above line server.                 out.flush(); // flush stream ensure data reaches other end.                 line = in.readutf(); // wait server send line of text.                 buf = line.tochararray();                 if(buf[0]=='1')     s1wiut=true;    else    s1wiut=false;                 if(buf[1]=='1')     s1wist=true;    else    s1wist=false;                 if(buf[2]=='1')     s1wirt=true;    else    s1wirt=false;                 if(buf[3]=='1')     s1silt=true;    else    s1silt=false;                 if(buf[4]=='1')     s1siut=true;    else    s1siut=false;                 if(buf[5]=='1')     s1sirt=true;    else    s1sirt=false;                  repaint();                 thread.sleep(1000);             }         } 

what can done fix issue??

  1. an unsigned applet can connect host loaded from.

  2. your applet tries connect 'localhost'. server must running on localhost too. it? how arranging that?

  3. you using readutf() read, println() write. won't work. println() needs readline(), andreadutf() needs writeutf().


Comments