2

通常の一連の POJO ではなく、Web サービスから生の XML 応答を取得しようとしています。

WSDL といくつかのスキーマから生成した (クライアントのコードにアクセスできるようにするため) Web サービス クライアントを使用しています。クライアントは RAD 7.5 で生成されます。JAX-WS を使用していると思います。私はクライアント コード自体を見てきましたが、クライアント コードが未加工の XML を処理するかどうか、またはそれを他のライブラリに渡すかどうかさえわかりません。

4

2 に答える 2

2

を使用してそれを行うことができます

javax.xml.ws.handler.soap.SOAPHandler<javax.xml.ws.handler.soap.SOAPMessageContext>

SOAPMessageContext#getMessage()メソッドを使用してメッセージを取得し、メソッドを使用してメッセージを文字列に変換する だけです

   public static String getXmlMessage(SOAPMessage message) throws Exception
   {
         ByteArrayOutputStream os = new ByteArrayOutputStream();
         message.writeTo(os);
         final String encoding = (String) message.getProperty(SOAPMessage.CHARACTER_SET_ENCODING);
         if (encoding == null)
         {
             return new String(os.toByteArray());
         }
         else
         {
            return new String(os.toByteArray(), encoding);    
         }
   }  

また、クライアント側のSOAPハンドラーについては、こちらを参照してください。

于 2012-08-15T20:26:55.210 に答える
1

広く文書化されているわけではありませんが、Dispatchインターフェイスを使用して、XML で直接動作する JAXWS クライアントを実装できます。 ここここには、開始するためのいくつかの記事があります。

于 2012-08-15T20:13:50.947 に答える