appengine:URL获取和解压缩Java中的大型gzip XML文件

appengine:URL获取和解压缩Java中的大型gzip XML文件,java,google-app-engine,gzip,gzipinputstream,Java,Google App Engine,Gzip,Gzipinputstream,我正在尝试从URL检索一个gzip格式的XML文件。我的问题是,在生产中使用GZipInputStream解压时,我得到的内容似乎被截断了。我最多只能读取xml的一小部分 URL feedURL = new URL(url); HttpURLConnection connection = (HttpURLConnection) feedURL.openConnection(); GZIPInputStream input = new GZIPInputStream(connection.getI

我正在尝试从URL检索一个gzip格式的XML文件。我的问题是,在生产中使用GZipInputStream解压时,我得到的内容似乎被截断了。我最多只能读取xml的一小部分

URL feedURL = new URL(url);
HttpURLConnection connection = (HttpURLConnection) feedURL.openConnection();
GZIPInputStream input = new GZIPInputStream(connection.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(input));
StringBuffer sb = new StringBuffer();
String line = "";
while((line = br.readLine()) != null) {
sb.append(line);
}
log.info(sb.toString());
这段代码总是只读取xml的一小部分。多次运行它会显示完全相同的结果。我已经尝试先使用ByteArrayOutputStream下载二进制内容。数组的大小与我下载的文件完全相同。但是,当我使用GZipInputStream解压字节数组时,仍然会得到相同的截断字符串


顺便说一句,本地的一切都很好,所以我相信GZipInputStream在GAE中是有限的。有人知道我该如何解决这个问题吗?

您是否尝试过将URLFetch与disallowTruncate一起使用?