Package | org.seasar.flex2.rpc.remoting |
Class | public dynamic class S2Flex2Service |
Inheritance | S2Flex2Service mx.rpc.AbstractService |
Implements | mx.core.IMXMLObject |
Subclasses | RemoteService |
S2Flex2Serviceは、S2Flex2のgatewayに接続する為のコンポーネントクラスです。
S2Container(Seasar2)に登録されたコンポーネントにアクセスして、メソッド実行を可能にします。
このサービスの接続先であるGatewayを指定する方法は、3パターンあります。
接続先の指定としてgatewayURLプロパティに指定する方法があります。
<s2:S2Flex2Service gatewayUrl="http://127.0.0.1:8080/flex/gateway" ...
この方法を使うと明示的に接続先を指定することができますが、接続先が変更になると、再度コンパイルする必要があります。
接続先の設定としてデフォルト設定になっているのは、このurlで指定する方法です。 systemManager.loaderInfo.urlの値を使って処理します。 例) http://127.0.0.1/test/test.swfだった場合は、 http://127.0.0.1/test/gatewayとしてます。 同じ階層のgatewayというURLをGatewayURLに指定します。
Flex Builder 2 などでデバッグしているときは、flashvarsでdefaultGatewayを指定することで 接続することができるようになります。
<param name="FlashVars" value="defaultGateway=http://127.0.0.1/flex2/gateway" />
configType="flashvars"を指定したときには、htmlファイルの中でflashvarsにdefaultGatewayを指定します。 サービス単位で接続先を変更するときには、destination名でgatewayUrlを指定します。 以下は、addServiceの接続先を指定する例です。addSevrice意外のサービスは、defaultGatewayに接続する事になります。
<param name="FlashVars" value="addService="http://127.0.0.1/flexservice/gateway"&"defaultGateway=http://127.0.0.1/flex2/gateway" />
MXML Syntax Hide MXML Syntax
<s2:S2Service>
タグは、スーパークラスの属性に加えて以下の属性を持ちます。
<s2:S2Flex2Service Properties gatewayUrl="null" showBusyCursor="true|false" id="No default" fault="No default" result="No default" destination="No default" configType="flashvars|xml|url" />
addService= new S2Flex2Service("addService"); addService.initialized(this,"addService"); addService.destination="addService"; addService.addEventListener(ResultEvent.RESULT,onGetData); addService.addEventListener(FaultEvent.FAULT,onFault); addService.addEventListener(IOErrorEvent.IO_ERROR,failreProcess); addService.addEventListener(IOErrorEvent.NETWORK_ERROR,failureProcess); addService.addEventListener(NetStatusEvent.NET_STATUS,failureProcess); addService.addEventListener(SecurityErrorEvent.SECURITY_ERROR,failureProcess); addService.addEventListener(FaultEvent.FAULT, failurProcess); addService.setCredentials("user_id","password"); //Authenication addService.getAddDtoData(); //service invoke
Property | Defined by | ||
---|---|---|---|
concurrency : String このプロパティについては、実装には反映されていません。(TBD)
将来のリリースで改善される可能性はあります。 | S2Flex2Service | ||
concurrency : String | S2Flex2Service | ||
configType : String | S2Flex2Service | ||
gatewayUrl : String サーバ接続する際のURLです。 AMFのGatewayを指定します。
| S2Flex2Service | ||
gatewayUrl : String | S2Flex2Service | ||
id : String mxml内部ドキュメント内部で管理されるこの S2Flex2Sericeインスタンスを特定するID です。
| S2Flex2Service | ||
id : String | S2Flex2Service | ||
showBusyCursor : Boolean サーバロジックを呼び出している間、カーソルをBusyCursorにするかどうかを決定します。 デフォルトはtrueです。
| S2Flex2Service | ||
showBusyCursor : Boolean | S2Flex2Service |
Property | Defined by | ||
---|---|---|---|
_con : NetConnection
サーバ接続の際に利用されるNetConnectionのインスタンスです。
| S2Flex2Service |
Method | Defined by | ||
---|---|---|---|
S2Flex2Service(destination:String = null)
コンストラクタ.
destinationをセットしたうえでResponderの配列を初期化します。 | S2Flex2Service | ||
initialized(document:Object, id:String):void
mxmlファイル内でS2Flex2Serviceをタグとして設定したときにMXMLコンパイラ(mxmlc)によって自動的に呼び出されます。
このクラスを ActionScript で作成し、検証で機能させるには、このメソッドを呼び出して、MXML ドキュメントと S2Flex2Service の id を渡す必要があります。 正しく指定しないと、Gatewayの指定が正しく行われない可能性があります。 | S2Flex2Service | ||
onFault(operation:String, result:*):void
呼び出したリモートサービスが何らかのエラーを返してきたときに呼ばれます
| S2Flex2Service | ||
onResult(operation:String, result:*):void
呼び出したリモートサービスが正常に終了したときに呼ばれます
| S2Flex2Service | ||
setCredentials(username:String, password:String):void
認証が必要なサービスを呼び出す際に必要な認証情報をセットします。
| S2Flex2Service | ||
setRemoteCredentials(remoteUsername:String, remotePassword:String):void
認証が必要な外部サービスを呼び出す際に必要な認証情報をセットします。
(TBD.)
このメソッドは呼び出しても、S2Flex2 1.0.xでは認識しません。 | S2Flex2Service |
Method | Defined by | ||
---|---|---|---|
callProperty(methodName:*, ... args):*
| S2Flex2Service | ||
configureListeners():void
NetConnectionにEventListenerの設定を行います。
| S2Flex2Service | ||
createConnection():void
NetConnectionのインスタンスを生成します。
| S2Flex2Service | ||
getProperty(name:*):*
指定されたnameにあわせたOperationを返します。
| S2Flex2Service | ||
initConnection():void
NetConnectionの初期化を行います。
| S2Flex2Service | ||
setProperty(name:*, value:*):void
Serviceより呼び出すOperationをセットします。
| S2Flex2Service |
Event | Summary | Defined by | ||
---|---|---|---|---|
The fault event is dispatched when a service call fails and isn't handled by the Operation itself. | S2Flex2Service | |||
IOErrorはNetwork接続時に入出力エラーが発生したときに送出されます。 | S2Flex2Service | |||
S2Flex2Service | ||||
The result event is dispatched when a service call successfully returns and isn't handled by the Operation itself. | S2Flex2Service | |||
S2Flex2Service |
_con | property |
protected var _con:NetConnection
サーバ接続の際に利用されるNetConnectionのインスタンスです。
concurrency | property |
public var concurrency:String
このプロパティについては、実装には反映されていません。(TBD)
将来のリリースで改善される可能性はあります。
concurrency | property |
public var concurrency:String
configType | property |
public var configType:String
gatewayUrl | property |
public var gatewayUrl:String
サーバ接続する際のURLです。 AMFのGatewayを指定します。
gatewayUrl | property |
public var gatewayUrl:String
id | property |
public var id:String
mxml内部ドキュメント内部で管理されるこの S2Flex2Sericeインスタンスを特定するID です。
id | property |
public var id:String
showBusyCursor | property |
public var showBusyCursor:Boolean
サーバロジックを呼び出している間、カーソルをBusyCursorにするかどうかを決定します。 デフォルトはtrueです。
showBusyCursor | property |
public var showBusyCursor:Boolean
S2Flex2Service | () | constructor |
public function S2Flex2Service(destination:String = null)
コンストラクタ.
destinationをセットしたうえでResponderの配列を初期化します。
Parametersdestination:String (default = null ) — サービスの宛先.呼び出すコンポーネントの名称を指定します。
|
callProperty | () | method |
flash_proxy override function callProperty(methodName:*, ... args):*
Parameters
methodName:* |
|
... args |
* |
configureListeners | () | method |
protected function configureListeners():void
NetConnectionにEventListenerの設定を行います。
createConnection | () | method |
protected function createConnection():void
NetConnectionのインスタンスを生成します。
getProperty | () | method |
flash_proxy override function getProperty(name:*):*
指定されたnameにあわせたOperationを返します。
Parametersname:* |
* — RPCOperation
|
initConnection | () | method |
protected function initConnection():void
NetConnectionの初期化を行います。
initialized | () | method |
public function initialized(document:Object, id:String):void
mxmlファイル内でS2Flex2Serviceをタグとして設定したときにMXMLコンパイラ(mxmlc)によって自動的に呼び出されます。
このクラスを ActionScript で作成し、検証で機能させるには、このメソッドを呼び出して、MXML ドキュメントと S2Flex2Service の id を渡す必要があります。
正しく指定しないと、Gatewayの指定が正しく行われない可能性があります。
document:Object — このクラスを利用しているmxml documents
|
|
id:String — S2Flex2Serviceのインスタンス
|
onFault | () | method |
public function onFault(operation:String, result:*):void
呼び出したリモートサービスが何らかのエラーを返してきたときに呼ばれます
Parametersoperation:String — 呼び出したサービスのメソッド名
|
|
result:* — 呼び出したエラー結果
|
onResult | () | method |
public function onResult(operation:String, result:*):void
呼び出したリモートサービスが正常に終了したときに呼ばれます
Parametersoperation:String — 呼び出したサービスのメソッド名
|
|
result:* — 呼び出したサービスの結果
|
setCredentials | () | method |
public override function setCredentials(username:String, password:String):void
認証が必要なサービスを呼び出す際に必要な認証情報をセットします。
Parametersusername:String — 認証に利用するユーザID
|
|
password:String — 認証に利用するパスワード
|
setProperty | () | method |
flash_proxy override function setProperty(name:*, value:*):void
Serviceより呼び出すOperationをセットします。
Parametersname:* — メソッド名
|
|
value:* — メソッドに対応したRPCOperation
|
setRemoteCredentials | () | method |
public override function setRemoteCredentials(remoteUsername:String, remotePassword:String):void
認証が必要な外部サービスを呼び出す際に必要な認証情報をセットします。
(TBD.)
このメソッドは呼び出しても、S2Flex2 1.0.xでは認識しません。
remoteUsername:String — 認証に利用するユーザID
|
|
remotePassword:String — 認証に利用するパスワード
|
fault | event |
mx.rpc.events.FaultEvent
The fault event is dispatched when a service call fails and isn't handled by the Operation itself.
fault イベントは、サービス(サーバロジック)を実行した際に、失敗、または例外が発生したときに送出されます。
ioError | event |
netStatus | event |
result | event |
mx.rpc.events.ResultEvent
The result event is dispatched when a service call successfully returns and isn't handled by the Operation itself.
result イベントは、サーバロジックを実行し正常に処理されたときに送出されます。
securityError | event |