package ServidorConcurrente; import java.util.*; import java.io.*; import java.net.*; class HebraServ extends Thread { private Socket c; public HebraServ (Socket conn) { c = conn; } public void run () { try { byte[] body, header, lc = {13,10}; String l, code, x, path="", CR_LF = new String(lc,"US-ASCII"); int j, n = 0; LineNumberReader netIn = new LineNumberReader(new InputStreamReader(c.getInputStream(), "UTF-8")); OutputStream netOut = c.getOutputStream(); System.out.println(l = URLDecoder.decode(netIn.readLine(), "UTF-16")); if (l.matches("GET .*")) { path=l.replaceFirst("GET[ ]+/([^ \\]*)[ \\].*", "$1" ); if ((path.matches(""))||(path.matches(".*/"))) { path += "index.html" ; } while (!(x = netIn.readLine()).equals("")) { System.out.println(x); } try { RandomAccessFile i = new RandomAccessFile(path, "r"); i.read(body = new byte[(int)i.length()]); code = "200 OK"; } catch (FileNotFoundException f) { body = ("