Ajaxフレームワーク ユーザーズガイド |
目次 索引 |
第3章 通信フレームワーク | > 3.2 Apcoordinator連携機能 |
ここでは、ビジネスメソッドの実行時に指定するコールバック関数について説明します。
callbackには、正常終了時に実行する処理または関数を指定します。
callbackの引数には、サーバからの戻り値が渡されます。サーバからの戻り値がない場合には、引数なしで呼び出されます。
戻り値となるデータBeanには、送信データを受け取るデータBeanとは異なるデータBeanを指定することができます。この際、戻り値となるデータBeanについては、Ajaxフレームワーク環境定義ファイルのデータBeanの定義(dataBeans)は必要ありません。Ajaxフレームワーク環境定義ファイルは、デフォルトの設定以外でデータ型変換を行いたい場合に定義する必要があります。
以下に、callbackで、mypkg.CustomerBeanクラスを戻り値として受け取る例を示します。
package mypkg; import com.fujitsu.uji.DataBean; public class CustomerBean extends DataBean { protected String customerId; protected String customerName; public String getCustomerId() { return customerId; } public void setCustomerId(String customerId) { this.customerId = customerId; } public String getCustomerName() { return customerName; } public void setCustmerName(String customerName) { this.customerName = customerName; } } |
package mypkg; import com.fujitsu.uji.DispatchContext; import com.fujitsu.uji.GenericHandler; public class MyHandler extends GenericHandler { public boolean init() { return true; } public Object doSomething(DispatchContext context, BodyBean dataBean) { // 業務ロジックを記述 (省略) // 戻り値はreturnで記述 CustomerBean retBean = new CustomerBean(); // customerId、customerNameの設定 (省略) return retBean; } } |
var option = { ..., callback:function(res){ customerModel.setProperty("cid", res.customerId); customerModel.setProperty("cname", res.custmerName); } }; |
errorHandlerには、エラー発生時に実行する処理または関数を指定します。
errorHandlerの引数には、エラーオブジェクトが渡されます。詳細は、“通信フレームワーク内のエラー”を参照してください。
以下に、エラー発生時にエラーコードとエラーメッセージをalertで表示する場合の記述例を示します。
var option = { ..., errorHandler:function(err){ alert( "Application Error ( " + err.errorCode + " : " + err.message + " )" ); } }; |
preInvokeには、メソッド呼出し直前に実行する処理または関数を指定します。
以下に、preInvokeが呼び出される際に、処理時刻をデバッグメッセージに出力する場合の記述例を示します。
var option = { ..., preInvoke:function(){ var lcDate = new Date(); RCF.debug( lcDate.toLocaleString() + " : preInvoke " ); } }; |
postInvokeには、メソッド呼出し直後に実行する処理または関数を指定します。
以下に、postInvokeが呼び出される際に、処理時刻をデバッグメッセージに出力する場合の記述例を示します。
var option = { ..., postInvoke:function(){ var lcDate = new Date(); RCF.debug( lcDate.toLocaleString() + " : postInvoke " ); } }; |
目次 索引 |