1

サーブレットにHttpServletRequestオブジェクトがあり、そこに投稿されたXMLドキュメントを取得します。JAXPを使用したいと思います(私の特定のユースケースではディスク容量を使いすぎるため、JAXBではありません)。ドキュメントを解析して、処理されるメモリ内のDOMオブジェクトにする必要があります。リクエストオブジェクトからPOSTXMLを解析する方法について何か考えはありますか?

ありがとう、

ジョン・ゴッシュ

4

1 に答える 1

0

それは、クライアントがそれをどのように送信したかによって異なります。

HTTPmultipart/form-data標準に準拠している場合(HTMLと一緒に使用される場合など<input type="file">)、Apache CommonsFileUploadまたはServlet3.0を使用HttpServletRequest#getParts()して、マルチパートリクエストから目的のパートを抽出します。ここにいくつかの具体的な例があります:JSP /サーブレットを使用してサーバーにファイルをアップロードする方法は?最終的には。になりたいと思いますInputStream

それが生のリクエスト本文である場合(つまり、リクエスト本文全体が実際にはXMLファイル全体である場合、ファイル転送にHTTPプロトコルを悪用している自家製の低レベルアプリケーションでよく見られます)、それをInputStreambyとして取得できますHttpServletRequest#getInputStream()

どのように使用/選択する場合でも、どういうわけかInputStreamXMLファイルを参照することになることを確認する必要があります。このようにして、通常の方法でJAXP APIにフィードできます。この方法では、メソッドがInputStream

于 2012-01-21T19:56:11.473 に答える