关于struts2向Extjs3传json对象的问题

发布于 2021-11-07 06:58:03 字数 2061 浏览 655 评论 3

程序过程就像标题里提到的那样,由struts2的action向前台extjs传json对象,但是在具体应用过程中遇到了很多问题,其中最让我头疼的就是在ext中怎样定义一个Ext.data.Store对象?

我的struts2的action中除了execute以外只有两个String,String a和String b,以及它们各自的setter和getter,请问这样的一个json对象怎样定义相应的Ext.data.Store?

我自己试着写了一个,但好像不对,不过还是拿出来请教一下各位:javascript代码如下:

	var store = new Ext.data.Store({
		proxy : new Ext.data.HttpProxy({
			url : 'showAdmin.action',
			method : 'get'
		}),
		reader : new Ext.data.JsonReader({
			root : 'testBeans'
		// ,
		// id : 'id'
		}, [ {
			name : 'a',
			mapping : 'a',
			type : 'string'
		}, {
			name : 'b',
			mapping : 'b',
			type : 'string'
		} ])
	});

struts2的xml配置文件定义如下:

<action name="showAdmin" class="showAdmin">
    <result type="json"/>
</action>
spring的xml配置文件定义如下:

<bean name="showAdmin" class="struts.action.ShowAdmin" scope="prototype">
</bean>

struts2的action类定义如下:

public class ShowAdmin extends ActionSupport {

	List<TestBean> testBeans=new ArrayList<TestBean>();
	public String execute()
	{
		TestBean t1=new TestBean();
		TestBean t2=new TestBean();
		t1.setA("1A");
		t1.setB("1B");
		t2.setA("2A");
		t2.setB("2B");
		testBeans.add(t1);
		testBeans.add(t2);
		return SUCCESS;
	}
	
	@JSON(name ="TestBean")
	public List<TestBean> getTestBeans() {
		return testBeans;
	}
	public void setTestBeans(List<TestBean> testBeans) {
		this.testBeans = testBeans;
	}
	
	
}
TestBean定义如下:

public class TestBean {

	private String a;
	private String b;
	public String getA() {
		return a;
	}
	public void setA(String a) {
		this.a = a;
	}
	public String getB() {
		return b;
	}
	public void setB(String b) {
		this.b = b;
	}
}
请问各位高手问题何在?急求。。。多谢了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

泪冰清 2021-11-12 23:36:44

你action的输出是怎么样的json啊?照你的js,要是:

{testBeans:[{'a':'1A','b':'1B'},{'a':'2A','b':'2B'}]}

store对象很好定义啊,对照上面的json,很好写的。

直接访问下你的action,看看出什么,我就不去测试了,好久不用这些个框架了。

冷清清 2021-11-09 23:52:14

你action的输出是怎么样的json啊?照你的js,要是:

{testBeans:[{'a':'1A','b':'1B'},{'a':'2A','b':'2B'}]}

store对象很好定义啊,对照上面的json,很好写的。

直接访问下你的action,看看出什么,我就不去测试了,好久不用这些个框架了。

眼眸里的那抹悲凉 2021-11-08 07:03:17

你action的输出是怎么样的json啊?照你的js,要是:

{testBeans:[{'a':'1A','b':'1B'},{'a':'2A','b':'2B'}]}

store对象很好定义啊,对照上面的json,很好写的。

直接访问下你的action,看看出什么,我就不去测试了,好久不用这些个框架了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文