public static void main(String[] args) {
		ObjectInputStream entrada=null;
		ObjectOutputStream salida=null;
		try{
			System.out.println("Iniciando Servidor...");
			ServerSocket elSocket= new ServerSocket(6666);

			System.out.println("Escuchando en el puerto 6666");
			cliente=elSocket.accept();
			System.out.println("Cliente conectado "+cliente.getInetAddress().getHostAddress());

			entrada=new ObjectInputStream(cliente.getInputStream());
			salida=new ObjectOutputStream(cliente.getOutputStream());

			System.out.println("Streams Correctos!");
			
			String cmd="NEL",yes="Recibido";
			Object in=entrada.readObject();
			do{
				//System.out.println(in.toString());
				if(in instanceof String){
					cmd=(String)in;
					System.out.println("Comando: "+cmd);
					salida.writeObject(yes);
				}
				else{
					try{
						File archivo= new File("Recibido.txt");
						FileOutputStream fos= new FileOutputStream(archivo);
						fos.write((byte[])in);
						System.out.println((byte[])in);
						//archivo.renameTo((File)in);
						System.out.println("Archivo Recibido\n"+archivo.getAbsolutePath()+" - "+archivo.length());
					}catch(EOFException ee){}
					cmd="NEL";
				}
				in=entrada.readObject();
			}while(cmd!=null&&!cmd.equalsIgnoreCase("NEL"));

		}catch(EOFException ee){
		}catch(Exception e){
			System.out.println("Error!! "+e);
			e.printStackTrace();
		}
		System.out.println("Sesion Terminada");
		//
		//			salida.close();
		//			entrada.close();
		//			elSocket.close();

	}