SoapClientMessageとは? わかりやすく解説

SoapClientMessage クラス

特定の SoapMessageStage で XML Web サービス クライアント送信した SOAP 要求または受信した SOAP 応答データ表します。このクラス継承できません。

名前空間: System.Web.Services.Protocols
アセンブリ: System.Web.Services (system.web.services.dll 内)
構文構文

Public NotInheritable Class
 SoapClientMessage
    Inherits SoapMessage
Dim instance As SoapClientMessage
public sealed class SoapClientMessage : SoapMessage
public ref class SoapClientMessage sealed :
 public SoapMessage
public final class SoapClientMessage extends
 SoapMessage
public final class SoapClientMessage extends
 SoapMessage
使用例使用例

次のコード片は、XML Web サービス クライアントによって送受信された SOAP メッセージ記録する SOAP 拡張機能一部です。この特定のフラグメントは、SoapClientMessageプロパティログ ファイル書き込むことにより、SOAP 拡張機能の SoapExtension.ProcessMessage メソッド渡される SoapClientMessage処理します

 ' Process the SOAP message received and write to a log file.
 Public Overrides Sub ProcessMessage(message
 As SoapMessage)
    Select Case message.Stage
       Case SoapMessageStage.BeforeSerialize
       Case SoapMessageStage.AfterSerialize
          WriteOutput(CType(message, SoapClientMessage))
       Case SoapMessageStage.BeforeDeserialize
          WriteInput(CType(message, SoapClientMessage))
       Case SoapMessageStage.AfterDeserialize
       Case Else
             Throw New Exception("invalid
 stage")
    End Select
 End Sub 'ProcessMessage
 
 
 ' Write the contents of the outgoing SOAP message to the log file.
 Public Sub WriteOutput(message As
 SoapClientMessage)
    newStream.Position = 0
    Dim myFileStream As New
 FileStream(filename, FileMode.Append, _
       FileAccess.Write)
    Dim myStreamWriter As New
 StreamWriter(myFileStream)
    myStreamWriter.WriteLine( _
       "================================== Request at "
 & DateTime.Now)

    ' Print to the log file the request header field for SoapAction
 header.
    myStreamWriter.WriteLine("The SoapAction Http request header
 field is: ")
    myStreamWriter.WriteLine(ControlChars.Tab & message.Action)

    ' Print to the log file the type of the client that invoked
    ' the XML Web service method.
    myStreamWriter.WriteLine("The type of the client is: ")
    If message.Client.GetType().Equals(GetType(MathSvc))
 Then
       myStreamWriter.WriteLine(ControlChars.Tab & "MathSvc")
    End If

   ' Print to the log file the method invoked by the client.
    myStreamWriter.WriteLine( _
       "The method that has been invoked by the client is:")
    myStreamWriter.WriteLine(ControlChars.Tab & message.MethodInfo.Name)

    ' Print to the log file if the method invoked is OneWay.
    If message.OneWay Then
       myStreamWriter.WriteLine( _
          "The client doesn't wait for the server to finish processing")
    Else
       myStreamWriter.WriteLine( _
          "The client waits for the server to finish processing")
    End If 

    ' Print to the log file the URL of the site that provides 
    ' implementation of the method.
    myStreamWriter.WriteLine( _
       "The url of the XML Web service method that has been requested
 is: ")
    myStreamWriter.WriteLine(ControlChars.Tab & message.Url)
    myStreamWriter.WriteLine("The contents of the SOAP envelope
 are: ")
    myStreamWriter.Flush()

    ' Copy the contents of one stream to another. 
    Copy(newStream, myFileStream)
    myStreamWriter.Close()
    myFileStream.Close()
    newStream.Position = 0

    ' Copy the contents of one stream to another. 
    Copy(newStream, oldStream)
End Sub 'WriteOutput
// Process the SOAP message received and write to a log file.
public override void ProcessMessage(SoapMessage
 message) 
{
   switch (message.Stage) 
   {
      case SoapMessageStage.BeforeSerialize:
         break;
      case SoapMessageStage.AfterSerialize:
         WriteOutput((SoapClientMessage)message);
         break;
      case SoapMessageStage.BeforeDeserialize:
         WriteInput((SoapClientMessage)message);
         break;
      case SoapMessageStage.AfterDeserialize:
         break;
      default:
         throw new Exception("invalid stage");
   }
}

// Write the contents of the outgoing SOAP message to the log file.
public void WriteOutput(SoapClientMessage message)
{
   newStream.Position = 0;
   FileStream myFileStream = new FileStream(filename, FileMode.Append
,
      FileAccess.Write);
   StreamWriter myStreamWriter = new StreamWriter(myFileStream);
   myStreamWriter.WriteLine(
      "================================== Request at "
      + DateTime.Now);

   // Print to the log file the request header field for SoapAction
 header.
   myStreamWriter.WriteLine("The SoapAction Http request header field is: ");
   myStreamWriter.WriteLine("\t" + message.Action);

   // Print to the log file the type of the client that invoked 
   // the XML Web service method.
   myStreamWriter.WriteLine("The type of the client is: ");
   if((message.Client.GetType()).Equals(typeof(MathSvc)))
      myStreamWriter.WriteLine("\tMathSvc");

   // Print to the log file the method invoked by the client.
   myStreamWriter.WriteLine(
      "The method that has been invoked by the client is:");
   myStreamWriter.WriteLine("\t" + message.MethodInfo.Name);

   // Print to the log file if the method invoked is OneWay.
   if(message.OneWay)
      myStreamWriter.WriteLine(
        "The client doesn't wait for the server to finish
 processing");
   else
      myStreamWriter.WriteLine(
        "The client waits for the server to finish processing");

   // Print to the log file the URL of the site that provides 
   // implementation of the method.
   myStreamWriter.WriteLine(
      "The URL of the XML Web service method that has been requested is: ");
   myStreamWriter.WriteLine("\t" + message.Url);
   myStreamWriter.WriteLine("The contents of the SOAP envelope are: ");
   myStreamWriter.Flush();

   // Copy the contents of one stream to another. 
   Copy(newStream, myFileStream);
   myFileStream.Close();
   newStream.Position = 0;

   // Copy the contents of one stream to another. 
   Copy(newStream, oldStream);
}
// Process the SOAP message received and write to a log file.
void ProcessMessage( SoapMessage^ message )
{
   switch ( message->Stage )
   {
      case SoapMessageStage::BeforeSerialize:
         break;
      case SoapMessageStage::AfterSerialize:
         WriteOutput( dynamic_cast<SoapClientMessage^>(message) );
         break;
      case SoapMessageStage::BeforeDeserialize:
         WriteInput( dynamic_cast<SoapClientMessage^>(message) );
         break;
      case SoapMessageStage::AfterDeserialize:
         break;
      default:
         throw gcnew Exception( "invalid stage" );
   }
}

// Write the contents of the outgoing SOAP message to the log file.
void WriteOutput( SoapClientMessage^ message )
{
   newStream->Position = 0;
   FileStream^ myFileStream = gcnew FileStream( filename, FileMode::Append,
      FileAccess::Write );
   StreamWriter^ myStreamWriter = gcnew StreamWriter( myFileStream );
   myStreamWriter->WriteLine(
      "================================== Request at {0}", DateTime::Now
 );
   
   // Print to the log file the request header field for SoapAction
 header.
   myStreamWriter->WriteLine( "The SoapAction Http request header field is:
 " );
   myStreamWriter->WriteLine( "\t{0}", message->Action );
   
   // Print to the log file the type of the client that invoked 
   // the XML Web service method.
   myStreamWriter->WriteLine( "The type of the client is: " );
   if ( (message->Client->GetType())->Equals( typeid<MathSvc^>
 ) )
   {
      myStreamWriter->WriteLine( "\tMathSvc" );
   }
   
   // Print to the log file the method invoked by the client.
   myStreamWriter->WriteLine(
      "The method that has been invoked by the client is:" );
   myStreamWriter->WriteLine( "\t{0}", message->MethodInfo->Name
 );
   
   // Print to the log file if the method invoked is OneWay.
   if ( message->OneWay )
   {
      myStreamWriter->WriteLine(
         "The client doesn't wait for the server to finish
 processing" );
   }
   else
   {
      myStreamWriter->WriteLine(
      "The client waits for the server to finish processing"
 );
   }
   
   // Print to the log file the URL of the site that provides 
   // implementation of the method.
   myStreamWriter->WriteLine(
      "The URL of the XML Web service method that has been requested is: "
 );
   myStreamWriter->WriteLine( "\t{0}", message->Url );
   myStreamWriter->WriteLine( "The contents of the SOAP envelope are: "
 );
   myStreamWriter->Flush();
   
   // Copy the contents of one stream to another. 
   Copy( newStream, myFileStream );
   myFileStream->Close();
   newStream->Position = 0;
   
   // Copy the contents of one stream to another. 
   Copy( newStream, oldStream );
}
// Process the SOAP message received and write to a log file.
public void ProcessMessage(SoapMessage message)
 throws Exception
{
    switch (message.get_Stage()) {
        case SoapMessageStage.BeforeSerialize:
            break;

        case SoapMessageStage.AfterSerialize:
            WriteOutput((SoapClientMessage)message);
            break;

        case SoapMessageStage.BeforeDeserialize:
            WriteInput((SoapClientMessage)message);
            break;

        case SoapMessageStage.AfterDeserialize:
            break;

        default:
            throw new Exception("invalid stage");
    }
} //ProcessMessage

// Write the contents of the outgoing SOAP message to the log file.
public void WriteOutput(SoapClientMessage message)
{
    newStream.set_Position(0);
    FileStream myFileStream = new FileStream(fileName, FileMode.Append,
 
        FileAccess.Write);
    StreamWriter myStreamWriter = new StreamWriter(myFileStream);
    myStreamWriter.WriteLine("================================== "
        + "Request at " + DateTime.get_Now());
    // Print to the log file the request header field for SoapAction
 header.
    myStreamWriter.WriteLine("The SoapAction Http request "
        + "header field is: ");
    myStreamWriter.WriteLine("\t" + message.get_Action());
    // Print to the log file the type of the client that invoked 
    // the XML Web service method.
    myStreamWriter.WriteLine("The type of the client is: ");
    if (message.get_Client().GetType().Equals(MathSvc.class.ToType()))
 {
        myStreamWriter.WriteLine("\tMathSvc");
    }
    // Print to the log file the method invoked by the client.
    myStreamWriter.WriteLine("The method that has been invoked by "
        + "the client is:");
    myStreamWriter.WriteLine("\t" + message.get_MethodInfo().get_Name());
    // Print to the log file if the method invoked is OneWay.
    if (message.get_OneWay()) {
        myStreamWriter.WriteLine("The client doesn't wait for
 the server "
            + "to finish processing");
    }
    else {
        myStreamWriter.WriteLine("The client waits for the
 server "
            + "to finish processing");
    }
    // Print to the log file the URL of the site that provides 
    // implementation of the method.
    myStreamWriter.WriteLine("The URL of the XML Web service method that "
        + "has been requested is: ");
    myStreamWriter.WriteLine("\t" + message.get_Url());
    myStreamWriter.WriteLine("The contents of the SOAP envelope are: ");
    myStreamWriter.Flush();
    // Copy the contents of one stream to another. 
    Copy(newStream, myFileStream);
    myFileStream.Close();
    newStream.set_Position(0);
    // Copy the contents of one stream to another. 
    Copy(newStream, oldStream);
} //WriteOutput
継承階層継承階層
System.Object
   System.Web.Services.Protocols.SoapMessage
    System.Web.Services.Protocols.SoapClientMessage
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SoapClientMessage メンバ
System.Web.Services.Protocols 名前空間

SoapClientMessage プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Action オーバーライドされますSOAP 要求または SOAP 応答SOAPAction HTTP 要求ヘッダー フィールド取得します
パブリック プロパティ ContentEncoding  Content-Encoding HTTP ヘッダー内容取得または設定します。 ( SoapMessage から継承されます。)
パブリック プロパティ ContentType  SOAP 要求または SOAP 応答HTTP Content-Type取得または設定します。 ( SoapMessage から継承されます。)
パブリック プロパティ Exception  XML Web サービス メソッド呼び出しから SoapException を取得します。 ( SoapMessage から継承されます。)
パブリック プロパティ Headers  現在の SOAP 要求または SOAP 応答適用される SOAP ヘッダーコレクション。 ( SoapMessage から継承されます。)
パブリック プロパティ MethodInfo オーバーライドされますSOAP 要求対象となる XML Web サービス メソッドメソッド プロトタイプ表示取得します
パブリック プロパティ OneWay オーバーライドされますサーバーによる XML Web サービス メソッドの処理が完了するまでクライアント待機するかどうかを示す値を取得します
パブリック プロパティ SoapVersion オーバーライドされますXML Web サービスとの通信使用する SOAP プロトコルのバージョン取得します
パブリック プロパティ Stage  SoapMessage の SoapMessageStage を取得します。 ( SoapMessage から継承されます。)
パブリック プロパティ Stream  Stream形式SOAP 要求または SOAP 応答表しているデータ取得します。 ( SoapMessage から継承されます。)
パブリック プロパティ Url オーバーライドされますXML Web サービスURL取得します
参照参照

関連項目

SoapClientMessage クラス
System.Web.Services.Protocols 名前空間

SoapClientMessage メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SoapClientMessage クラス
System.Web.Services.Protocols 名前空間

SoapClientMessage メンバ

特定の SoapMessageStage で XML Web サービス クライアント送信した SOAP 要求または受信した SOAP 応答データ表します。このクラス継承できません。

SoapClientMessage データ型公開されるメンバを以下の表に示します


パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Action オーバーライドされますSOAP 要求または SOAP 応答SOAPAction HTTP 要求ヘッダー フィールド取得します
パブリック プロパティ ContentEncoding  Content-Encoding HTTP ヘッダー内容取得または設定します。(SoapMessage から継承されます。)
パブリック プロパティ ContentType  SOAP 要求または SOAP 応答HTTP Content-Type取得または設定します。(SoapMessage から継承されます。)
パブリック プロパティ Exception  XML Web サービス メソッド呼び出しから SoapException を取得します。(SoapMessage から継承されます。)
パブリック プロパティ Headers  現在の SOAP 要求または SOAP 応答適用される SOAP ヘッダーコレクション。(SoapMessage から継承されます。)
パブリック プロパティ MethodInfo オーバーライドされますSOAP 要求対象となる XML Web サービス メソッドメソッド プロトタイプ表示取得します
パブリック プロパティ OneWay オーバーライドされますサーバーによる XML Web サービス メソッドの処理が完了するまでクライアント待機するかどうかを示す値を取得します
パブリック プロパティ SoapVersion オーバーライドされますXML Web サービスとの通信使用する SOAP プロトコルのバージョン取得します
パブリック プロパティ Stage  SoapMessage の SoapMessageStage取得します。(SoapMessage から継承されます。)
パブリック プロパティ Stream  Stream形式SOAP 要求または SOAP 応答表しているデータ取得します。(SoapMessage から継承されます。)
パブリック プロパティ Url オーバーライドされますXML Web サービスURL取得します
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SoapClientMessage クラス
System.Web.Services.Protocols 名前空間



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SoapClientMessage」の関連用語

SoapClientMessageのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SoapClientMessageのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS