急求对FormPanel的封装

[size=large][size=medium]FormPanel在进行提交的时候,返回一定是 json格式的,并且里面要包含success: true/false.这与我们之前的应用会有一部分的冲突。我们都是返回xml格式的。所以我想自己封装一个。我封装的不是太好,所以想请高手帮我看看。
[code="java"]
// XML格式
<?xml version="1.0" encoding="UTF-8"?>


0 // 正确与否
// 是否进行跳转
未分组 // 错误显示信息


// 返回内容数据
1
200
1



[/code]
[code="java"]
function formsubmit(options){
if(!options)
return;

Ext.MessageBox.show({
msg : '正在处理中,请稍等',
title: '请等待',
width : 250,
progress:true,
wait : true,
waitConfig : { interval : 350 }

});

Ext.Ajax.request({
url : 'http://127.0.0.1/result.xml',
method: 'GET',
params: options.params, // 所有请求参数
callback: function (options, success, response){
if(success){
options.success('123'); // 返回信息
}else{
options.failure('与服务器通讯失败,请稍候重试');

}
Ext.MessageBox.hide();
}
});
}
[/code]

formsubmit({
params: 'sss=22&ddd=444',
success: function(msg){
alert(msg); // 当成功的时候,这边执行不了
},
failure: function(msg){
alert(msg);
}
});

[quote]我发现用json与前端通讯,还是最方便的。[/quote]
json就是专门为这么目的设计的。

自己封装的话,还是必须用xml?如果用hash我可以帮你封装一个给你研究

当然这种想法可以。

可以考虑借助JSONObject把xml转化为json数据

private Map parseStr(String str) {
String[] arrayOfString1;
Map map = new HashMap();
int j = (arrayOfString1 = str.split(",")).length; for (int i = 0; i < j; ++i) { String strPart = arrayOfString1[i];
String[] ss = strPart.split(":");
if (ss != null) { if (ss.length != 2)
continue;

    String key = ss[0];
    String value = ss[1].trim();
    if ((value.startsWith("'")) && (value.endsWith("'"))) {
      map.put(key, value.substring(1, value.length() - 1));
    }
    else if ((value.startsWith("\"")) && (value.endsWith("\""))) {
      map.put(key, value.substring(1, value.length() - 1));
    }
    else if ((value.equals("true")) || (value.equals("false"))) {
      map.put(key, Boolean.valueOf(value));
    }
    else if (value.indexOf(".") == -1)
      try {
        int val = Integer.parseInt(value);
        map.put(key, Integer.valueOf(val));
      }
      catch (Exception e) {
        map.put(key, value);
      }
    else
      try
      {
        BigDecimal val = new BigDecimal(value);
        map.put(key, val);
      }
      catch (Exception val) {
        map.put(key, value);
      }
  }
}
return map;

}能看的懂吗?

转list的