5

National Weather Service SOAP サーバーに要求を送信するようにクライアントをセットアップしました。期待どおりの応答を受け取りましたが、必要なデータを抽出する最善の方法がわかりません。

たとえば、XML (SOAPBody 内) には多くの余分なデータがありますが、POJO に設定したパラメーター (温度など) のデータのみを取得したいと考えています。

このデータを抽出する最良の方法は何ですか?

4

2 に答える 2

11

あなたが説明したように、SOAP Webサービスを手で消費しようと始めました-より良い方法があります。

あなたのためにすべての作業を行うライブラリがそこにあります - 手で何かを解析する必要はありません。

JAX-WS をチェックしてください。最近のほとんどの IDE (確かに NetbeansEclipse ) も、WSDL を指定して Web サービス クライアントを構築するためのポイント アンド クリック サポートを提供します。

このルートの最大の潜在的な問題は、WSDL がない場合、または WSDL が間違っている場合です。その場合、リンクしたツールがうまくいかない可能性があります。

次に最も安全なのは、JAXP の SAX や DOM などの XML パーサー (JRE にある) を使用して応答を解析し、関連するデータ構造をたどることです。

最後に、分割または正規表現を使用して文字列ハッキング ルートに進むこともできますが、そのパスには潜在的な問題がたくさんあります。XML 仕様には、ネストされたタグよりも多くのものがあります。

于 2009-09-23T20:50:05.133 に答える
2

手作業でSOAPをデコードしようとしないことを強くお勧めします:)

@Brabsterが言ったことを拡張するために、Netbeansは、特にJAX-WSライブラリを使用して、広範なWebサービスをサポートしています。

http://www.netbeans.org/kb/60/websvc/jax-ws.html#Exercise_3_1

于 2009-09-23T20:54:46.043 に答える