我正在点击xml并在输入流中获取响应。此xml位于远程服务器上。
每当我在服务器上运行代码时,它都会给我JDOMException,但是相同的代码,我在本地计算机上运行并在远程服务器上运行相同的xml,它运行正常。
URL url = new URL("http://testwww.net/xml/android.xml");
InputStream stream = url.openStream();
try {
SAXBuilder builder = new SAXBuilder(false);
xmlDocument = builder.build(stream);
} catch (JDOMException e) {
throw new Exception("unable to read android listing document", e);
}
我无法弄清楚这里的问题是什么,相同的xml在一台机器上正常运行而在另一台机器上运行不正常。
请帮帮我。
由于 马力
答案 0 :(得分:2)
JDOMException(推测)正在发生,因为“testwww.net”服务器正在发送不是XML的响应主体。更改程序以打印出实际的响应流,而不是尝试将其解析为XML。这应该给你一些关于底层问题的线索。即使打印出JDOMException堆栈跟踪也可能有用......假设您可以获得该输出。
如果问题是您在某个服务器上运行该代码并且您无法获取代码写入“system.out”,服务器日志或其他任何内容的调试信息,那么您就遇到了麻烦。你将不得不用你的想象力来解决这个障碍。