/**
* DWR与EXTJS一同使用的PROXY
*/
Ext.namespace("Ext.ux.data");
Ext.ux.data.DwrProxy = function(config) {
Ext.apply(this, config);
Ext.applyIf(config, {
url : "support.jsp"
});
Ext.ux.data.DwrProxy.superclass.constructor.call(this, config);
};
Ext.ux.data.DWRProxy = Ext.ux.data.DwrProxy;
Ext.extend(Ext.ux.data.DwrProxy, Ext.data.DataProxy, {
//not use this property now.
dwrKey : "dwrKey",
dwrFun : undefined,
//not use this property now
dwrParams : [],
doRequest : function(action, record, params, reader, cb, scope,
options) {
var root = this;
var fun = this.dwrFun || this.api[action];
var trans = {
"params" : params || {},
"request" : {
"callback" : cb,
"scope" : scope,
"arg" : options
},
"reader" : reader
};
alert(params.jsonData);
var args = [];
// if(params.jsonData){
// args.push(params.jsonData)
// }
args.push(this.createCallback(action, record, trans));
fun.apply(window, args);
},
// private
createCallback : function(action, record, trans) {
return {
// callback for dwr Ajax request
callback : function(result) {
if (action === Ext.data.Api.actions.read) {
this.onRead(action, trans, result);
} else {
this.fireEvent("loadexception", this, trans, null,
ex);
}
}.createDelegate(this),
// dwr Ajax request error handler.
errorHandler : function(message, ex) {
Ext.Msg.alert("Error", message + "<br>" + ex);
this.fireEvent("loadexception", this, trans, null, ex);
}.createDelegate(this)
}
},
onRead : function(action, trans, result) {
var records;
try {
records = trans.reader.readRecords(result);
} catch (ex) {
alert(ex + "/n callback catch a exception!");
this.fireEvent("loadexception", this, trans, null, ex);
this.fireEvent('exception', this, 'response', action,
trans, null, ex);
trans.request.callback.call(trans.request.scope, null,
trans.request.arg, false);
return;
}
this.fireEvent("load", this, null, trans.request.arg);
trans.request.callback.call(trans.request.scope, records,
trans.request.arg, true);
}
});
/**
*var store = new Ext.data.JsonStore({autoLoad:true,proxy:new Ext.ux.DwrProxy({
*dwrFun:user.func
*})});
*/
Ext.ux.data.DwrProxy
最新推荐文章于 2016-03-07 09:29:19 发布
2172

被折叠的 条评论
为什么被折叠?



