methods - メソッド

サービスによって提供されるリモートメソッドを指定します。

カテゴリ

その他

構文

<xe:this.methods>
	<xe:remoteMethod attributes>content</xe:remoteMethod>
	...
</xe:this.methods>
remoteMethod オブジェクトには、以下のプロパティがあります。
表 1. 必須プロパティ
プロパティ 説明
arguments - 引数リスト メソッドに渡される remoteMethodArg オブジェクトのリスト。各オブジェクトには、以下のプロパティがあります。
  • loaded - ロード
  • name - 引数名
  • type - 引数の型
loaded - ロード ページのロード時に、タグインスタンスを作成するかどうか。true または false。
name - メソッド名 メソッドの名前。
script - スクリプト サーバーサイドのスクリプト。

使用法

設計モードで、[すべてのプロパティ] をクリックし、[other] の下で [methods] を探します。

以下の例は、リモートサービスを公開した後、クライアントサイドのスクリプトを使用したボタンを使用してサービスメソッドを呼び出し、その JSON 出力をローカルファイルシステムにリダイレクトします。
<xe:jsonRpcService
id="jsonRpcService1" serviceName="userinfo">
	<xe:this.methods>
		<xe:remoteMethod name="getUserName">
			<xe:this.script><![CDATA[return @UserName()]]&gt;</xe:this.script>
		</xe:remoteMethod>
		<xe:remoteMethod name="add" script="return arg1 + arg2">
			<xe:this.arguments>
				<xe:remoteMethodArg name="arg1"></xe:remoteMethodArg>
				<xe:remoteMethodArg name="arg2"></xe:remoteMethodArg>
			</xe:this.arguments>
		</xe:remoteMethod>
	</xe:this.methods>
</xe:jsonRpcService>
<xp:button value="Display the user" id="button3">
	<xp:eventHandler event="onclick" submit="false">
		<xp:this.script><![CDATA[var deferred = userinfo.getUserName()
deferred.addCallback(function(result) {
	alert(result)
});]]>
		</xp:this.script>
	</xp:eventHandler>
</xp:button>