0

私は xml をヒットし、inputstream で応答を取得しています。この 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 が 1 台のマシンで正常に動作し、他のマシンでは正常に動作していないことを理解できません。

私を助けてください。

ありがとうございます

4

1 に答える 1

2

「testwww.net」サーバーが XML ではない応答本文を送信しているため、JDOMException が (おそらく) 発生しています。XML として解析するのではなく、実際の応答ストリームを出力するようにプログラムを変更してください。これにより、根本的な問題が何であるかについての手がかりが得られるはずです。JDOMException スタックトレースを出力するだけでも役に立ちます...その出力を取得できると仮定します。


問題が、そのコードを何らかのサーバーで実行していて、コードが「system.out」に書き込むデバッグ情報、サーバーのログなどを取得できない場合、問題が発生しています。想像力を働かせて、その障害を回避する方法を見つける必要があります。

于 2011-05-01T03:00:01.200 に答える