Http PUT solicitud a jpeg

Recibí HTTP PUT como:

PUT /photo HTTP/1.1
X-Apple-AssetKey: F92F9B91-954E-4D63-BB9A-EEC771ADE6E8
X-Apple-Transition: Dissolve
Content-Length: 462848
User-Agent: MediaControl/1.0
X-Apple-Session-ID: 1bd6ceeb-fffd-456c-a09c-996053a7a08c

<HERE COMES THE JPEG DATA>

Tratando de almacenarlo, termina enim==null exception.

Socket s = server.accept();
    BufferedReader br = new BufferedReader(new InputStreamReader(
                    s.getInputStream()));

    String tag = br.readLine().split(" ")[1];

    System.out.println(tag);

    if (tag.contains("/photo")) {
        while (!br.readLine().equals(""));
            File file = new File("" + System.currentTimeMillis() + ".jpg");
            InputStream is = (s.getInputStream());
            BufferedImage bImageFromConvert = ImageIO.read(is); 
            ImageIO.write(bImageFromConvert, "jpg", file);
            System.out.println(file);
    }
    br.close();
    s.close();

Así que mi idea fue quitar el encabezado con el BufferedReader y luego leer el InputStream restante (que contiene jpeg), pero creo que BufferedReader no afecta el desplazamiento de InputStream. Entonces, ¿cómo puedo omitir el encabezado y escribir el jpeg?

Respuestas a la pregunta(1)

Su respuesta a la pregunta