SOAP メッセージを作成して送信するために、Java 7 で SAAJ を使用しています。本体以外は揃っています。XML ファイルの内容を、フォーマット エラーなしで SOAP メッセージの本文に取り込む必要があります。DOM ドキュメントを使用してみました。スキャナーで行ごとに読み取り、手動で追加しようとしましたが、どれも機能しません。DOM ドキュメント ソリューションは、メッセージのヘッダーと本文を削除するだけで済み、他のソリューションは「<」と「">」の文字をそれぞれ「<」と「">」で上書きし続けます。String.replaceWith() を使用してこれをハックしようとしましたが、SOAP メッセージが送信されると変更が発生します。xml ファイルから SAAJ オブジェクトを作成する巨大なパーサーをコーディングせずにこれを達成する方法を知っている人はいますか? ありがとう。
3270 次
2 に答える
0
使用することもできます
SOAPMessage message = getSoapMessageFromString("<a><b><c>hello</c><d test='attrib'>foo</d></b>blablabla</a>");
private static SOAPMessage getSoapMessageFromString(String xml)
throws SOAPException, IOException {
MessageFactory factory = MessageFactory.newInstance();
// Create a new message object with default MIME headers and the data
// from the XML string we passed in
SOAPMessage message = factory
.createMessage(
new MimeHeaders(),
new ByteArrayInputStream(xml.getBytes(Charset
.forName("UTF-8"))));
return message;
}
xml テキストを既に文字列オブジェクトに解析しており、解析や検証を気にしない場合。
于 2015-02-27T21:50:42.520 に答える