SAAJ Soap 接続を使用してサード パーティの Web サービスを呼び出しています。Web サービスは WCF または C# を使用して作成されているようです。SOAP UI ツールを使用して URL を呼び出すと、正常に動作し、応答を正常に受信します。以下の Java コードからアクセスしようとすると、エラーが発生します。
コード :
public class SOAPClientSAAJNew {
public static void main(String args[]) throws Exception {
// Create SOAP Connection
SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
SOAPConnection soapConnection = soapConnectionFactory.createConnection();
// Send SOAP Message to SOAP Server
String url = "XXX";
SOAPMessage soapResponse = soapConnection.call(createSOAPRequest(), url);
// print SOAP Response
System.out.print("Response SOAP Message:");
soapResponse.writeTo(System.out);
soapConnection.close();
}
}
エラー:
SEVERE: SAAJ0008: 応答が正しくありません。コンテンツ タイプが 'text/xml; であるため、メッセージを処理できません。charset=utf-8' は、予想されるタイプ 'multipart/related;' ではありませんでした。type="application/xop+xml"'. スレッド「メイン」での例外 com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: 応答が正しくありません: (415Cannot process the message because the content type 'text/xml ; charset=utf-8' は予想されるタイプ 'multipart/related; type="application/xop+xml"' ではありませんでした。com.sun.xml.internal.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOAPConnection で.java:148) で example.SOAPClientSAAJNew.main(SOAPClientSAAJNew.java:25) 原因: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: 応答が正しくありません:
原因:
com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Bad response: (415Cannot process the message because the content type 'text/xml; charset=utf-8' was not the expected type 'multipart/related; type="application/xop+xml"'.
at com.sun.xml.internal.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:258)
at com.sun.xml.internal.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOAPConnection.java:144)
at example.SOAPClientSAAJNew.main(SOAPClientSAAJNew.java:25)
ヘッダー部分の SOAP UI ツールでは、受信している Content-Type を確認できました
HTTP/1.1 200 OK
Content-Length: 35512
Content-Type: multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:02b574c6-30b8-45f3-a9fc-5d5deac849ab+id=14";start-info="application/soap+xml"
Server: Microsoft-IIS/7.0
MIME-Version: 1.0
Date: Wed, 10 Sep 2014 12:55:29 GMT
java を使用してこのコンテンツ タイプを受信するにはどうすればよいですか? 軸も使ってみました。私が受け取ったのと同じエラーメッセージ。