Javaを使用してCiscoips(SDEEサーバー)からデータをプルしています。これは通常のWebリクエストであり、HttpsURLConnectionを使用しています。応答はXML形式です。
データをプルするジョブをトリガーできるUI(Webアプリ)があります。また、データをプルするジョブをトリガーできるスタンドアロンユーティリティもあります。したがって、sdeeサーバーからデータを取得するコードはどちらの場合も同じです。Quartzを使用してジョブをスケジュールしますが、この情報はここでは関係ありません。
ここで問題が発生します。UIからジョブがトリガーされると、期待されるxmlが取得され、問題は発生しません。ただし、ユーティリティを使用してジョブがトリガーされると、同じxmlが取得されますが、タグ内に名前空間が含まれます。
<['http://example.org/2003/08/sdee']:sd:evIdsAlert eventId='123' vendor='Cisco' severity='low'><['http://example.org/2003/08/sdee']:sd:originator>
[' http://example.org/2003/08/sdee']-これは私たちが得ている余分なものです。XMLではこれは望ましくありません。
コードは同じなので、環境設定が応答に影響しているのではないかと思いますが、何がわかりません。
参考までに、コードの一部(使用しているもの):
// get the connection
connection = (HttpsURLConnection) url.openConnection();
// get the reader
new BufferedReader(new InputStreamReader(connection.getInputStream()));
// read response line by line and dump it to the file
コードは非常に単純です。HTTPを使用してデータをプルするための標準的なコードです。