Por que estou recebendo este erro Prematuro final do arquivo?

Eu estou tentando analisar eXML response, mas estou falhando miseravelmente. Eu pensei inicialmente que oxml só não estava sendo retornado na resposta, então eu criei o código abaixo com um link direto para o meuxml arquivo online. Eu sou capaz de imprimir oXML para tela sem problemas. No entanto, quando eu chamo o meu método de análise eu receboFim prematuro do arquivo.

Funciona se eu passar o URL diretamente:

builder.parse ("");

mas falha quando eu passei por um InputStream:

builder.parse (connection.getInputStream ());

<code>  try {
    URL url = new URL(xml);
    URLConnection uc =  url.openConnection();
    HttpURLConnection  connection = (HttpURLConnection )uc;

    connection.setDoInput(true);
    connection.setDoOutput(true);

    InputStream instream;
    InputSource source;
    //get XML from InputStream
    if(connection.getResponseCode()>= 200){
        connection.connect();       
        instream = connection.getInputStream();         
        parseDoc(instream);     
    }
    else{
        instream = connection.getErrorStream();
    }


} catch (MalformedURLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (ParserConfigurationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (SAXException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}



 static void parseDoc(InputStream instream) throws ParserConfigurationException,
 SAXException, IOException{


  BufferedReader buff_read = new BufferedReader(new InputStreamReader(instream,"UTF-8"));
    String  inputLine = null;

    while((inputLine = buff_read.readLine())!= null){
        System.out.println(inputLine);
    }

  DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
  factory.isIgnoringElementContentWhitespace();
  DocumentBuilder builder = factory.newDocumentBuilder();
  Document doc = builder.parse(instream);
}
</code>

Os erros que estou recebendo:

<code>    [Fatal Error] :1:1: Premature end of file.
org.xml.sax.SAXParseException: Premature end of file.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
    at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
    at com.ameba.api.network.MainApp.parseDoc(MainApp.java:78)
    at com.ameba.api.network.MainApp.main(MainApp.java:41)
</code>

questionAnswers(4)

yourAnswerToTheQuestion