2017-11-26 15 views
0

SOAPリクエストを生成する関数が1つあります。リクエストはSOAP UIツールとそのフェッチで実行できます。エラーを表示するSOAPレスポンス-SAAJ Java

私は

SOAPMessage soapResponse = soapConnection.call(soapMessage, url); 

呼び出すと、私はこの

MessageFactory messageFactory = MessageFactory.newInstance(); 
SOAPMessage soapMessage = messageFactory.createMessage(); 
MimeHeaders headers = soapMessage.getMimeHeaders(); 
headers.removeAllHeaders(); 
headers.addHeader("Content-Type", "text/xml"); 
SOAPPart soapPart = soapMessage.getSOAPPart(); 

ようにするSOAPMessageを作成していますが、このエラーを取得する:

SEVERE: SAAJ0537: Invalid Content-Type. Could be an error message instead of a SOAP message com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Invalid Content-Type:text/html. Is this an error message instead of a SOAP response?

あなたはそれを整理するのに役立つだろうか? それは接続が確立できないことを意味するかどうか?

答えて

0

SOAPメッセージのほとんどのHTTP Content-Typeヘッダーはapplication/soap+xmlXML SOAP参照)です。

例外は、Content-Typeヘッダーの値がtext/htmlであることを示すSOAPサービスコンテナから発生します。 SOAP UIが正しいリクエストヘッダー値を設定したと思います。

コードによって送信されたヘッダー値は、デフォルト値のようです。あなたは、あなたのフレームワーク/ライブラリでそれを設定するために、サーバとホーのために期待されるContent-Typeの値が何であるかを調べるべきです。

+0

私はこのようにMessageFactoryを追加していますmessageFactory = MessageFactory.newInstance(); \t \t \t SOAPMessage soapMessage = messageFactory.createMessage(); \t \t \t MimeHeaders headers = soapMessage.getMimeHeaders(); \t \t \t headers.removeAllHeaders(); \t \t headers.addHeader( "Content-Type"、 "text/xml"); \t \t \t SOAPPart soapPart = soapMessage.getSOAPPart(); – user3131560

+0

これは正常です。使用しているSAAJ実装(またはアプリケーションサーバー)に関する情報を追加できますか?設定に関連しているようだ。 –

+0

eclipse.pLEASEのスタンドアロンJavaコード – user3131560

関連する問題