Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

Web メソッドの追加

Web メソッドは、Web サービスとして公開されるメソッドです。SOAP クライアントは、メソッドにアクセスすることができます。前述のように、Web メソッドは、以下の基準を満たす通常の Caché メソッドです。

  • WebMethod 属性でタグ付けされる。

  • Web メソッドが返すオブジェクト、または引数として受け入れるオブジェクトはすべて、XML 対応である。つまり、%XML.AdaptorOpens in a new tab を拡張したクラスのインスタンスです。

  • Web メソッドは、クラス・メソッドにすることも可能ですが、一般的にはインスタンス・メソッドにします。ほとんどの場合、Web サービス・クラスのプロパティは Web メソッド内から制御することになるので、インスタンス・メソッドが必要になります。

次のメソッドでは、指定された id 値を持つ Contact インスタンスが取得され、それがクライアントに返されます。Web サービスのクライアントは、このメソッドを使用して Caché から Contact インスタンスを取得することができます。スタジオのクラス・エディタを使用して、SOAPService クラスにこのメソッドを追加し、[ビルド]→[コンパイル] をクリックしてクラスをコンパイルします。


Method GetContact(id As %String) As SOAPTutorial.Contact [ WebMethod ]
{
 if ##class(SOAPTutorial.Contact).%ExistsId(id){
  quit ##class(SOAPTutorial.Contact).%OpenId(id)
 }
 else {
  quit ""   
 }
}
FeedbackOpens in a new tab