struts2 + extjs 整合
这几天在弄这个struts2 + extjs 整合的东西....苛参啊.....
不说废话了...分享一下经验....
首先就是要导入的包吧....struts2.0的包就不用说了....
因为在extjs中用的是json作为数据转换,所以先导入json的包...有:
json-lib
jakarta commons-lang 2.3
jakarta commons-beanutils 1.7.0
jakarta commons-collections 3.2
jakarta commons-logging 1.1
ezmorph 1.0.3
接着就是导入extjs....把ext-2.0文件夹直接复制过来....
主要的原理是在struts2.0的actionh中增添一个string变量叫 jsonString...
把你要输出到页面的数据传入这个string...
如下:
JSONArray array = JSONArray.fromObject(list);
this.setJsonString("{success:true,totalCount : " + this.getTotalCount() + ", list:" + array.toString() + "}");
接着就把action的返回在struts.xml文件中设置到一个页面...该页面用于接收json数据...如下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib prefix="s" uri="/struts-tags"%>
<s:property value="jsonString" escape="false" />
接着你js的store可以这样写...
// Store
var ds = new Ext.data.Store( {
proxy : new Ext.data.HttpProxy( {
url : 'user/ExtJSONAction!jsonExecute'
}),
//
reader : _jsonReader
});
这样就会把你的json数据传输到你的这个store里面....
其他的自己看看struts或者extjs就明白了....
这里主要介绍struts和extjs的交互的一种方式....