struts属性注射问题,在线等待

tengfeng05 2012-10-25 07:58:50
我在前台有几个字段,通过ajax提交到action中,在action中有一个实体bean对象,要提交的字段都是这个实体对象的属性,请问struts怎么自动把这些属性通过该对象的setter方法自动注值?实体对象是如下的topic,另外还有一个key,我也希望能通过它的setter方法将其值自动注入,现在的问题,实体对象topic的属性值没有注入,key的值也没有注入。我不知道哪里出错了,拜求各位高人给看一下!谢谢!

public class TopicAction {

private TopicService topicService = null;

private Topic topic = null;

private String key = null;

private List<File> files;

public void setTopicServoce(TopicService topicService) {
this.topicService = topicService;
}

public Topic getTopic() {
return topic;
}

public void setTopic(Topic topic) {
this.topic = topic;
}

public String getKey() {
return key;
}

public void setKey(String key) {
this.key = key;
}

public List<File> getFiles() {
return files;
}

public void setFiles(List<File> files) {
this.files = files;
}

public TopicAction(){
}

public void post(){

//HttpServletRequest request = ServletActionContext.getRequest();
System.out.println(key);
topicService.pubTopic(topic, files, key);


}

}

下面是前台代码,其中fid、author、title、content是上面topic对象中的字段,key是单独的字段

$.ajax({
url:'forum/postTopic.action',
type:'post',
data:
{ fid:1,author:'ljg',title:'test',content:'content',key:'ko'},
async :true,
success:function(data)
{
if(data=='success'){
alert('成功!');
}
}
});

...全文
144 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
tengfeng05 2012-10-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

也可以采用data:{'topic.id':1,'topic.name':'休闲鞋'}由于js中定义对象的属性不能有.的存在所以这里需要用引号,这样的话你aciton中就可以得到topic对象的值了,
[/Quote]
这样也可以!问题解决,分就给你了!
tengfeng05 2012-10-26
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

可以通过ajax传递json对象然后再action端的setXX方法内转换成对应的对象就可以了
[/Quote]
好像就是这样!我想起来了,以前看见别人这么写过!
吉他猪 2012-10-25
  • 打赏
  • 举报
回复
这里和从表单控件取得数据定义name属性的原理是一样的
吉他猪 2012-10-25
  • 打赏
  • 举报
回复
也可以采用data:{'topic.id':1,'topic.name':'休闲鞋'}由于js中定义对象的属性不能有.的存在所以这里需要用引号,这样的话你aciton中就可以得到topic对象的值了,
流星陨落 2012-10-25
  • 打赏
  • 举报
回复
高手都太低调了
吉他猪 2012-10-25
  • 打赏
  • 举报
回复
可以通过ajax传递json对象然后再action端的setXX方法内转换成对应的对象就可以了
tengfeng05 2012-10-25
  • 打赏
  • 举报
回复
key的值注射进来了,是因为我一开始没有在前台加上key那个参数,后来加上key之后没有更新文件到服务器上。不知道有没有什么办法让其他几个属性的值自动注入到topic对象中?
tengfeng05 2012-10-25
  • 打赏
  • 举报
回复
我对struts并不太熟悉,struts会不会为topic赋值我不确定,但我觉得key的值是一定可以注入进来的,但现在key的值也没有,不知道为什么
tengfeng05 2012-10-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
在url后面加个时间戳试试看:“forum/postTopic.action?new Date().getTime()”
[/Quote]
加时间戳?应该和时间戳没有关系吧?
  • 打赏
  • 举报
回复
在url后面加个时间戳试试看:“forum/postTopic.action?new Date().getTime()”
tengfeng05 2012-10-25
  • 打赏
  • 举报
回复
似乎我每一次在CSDN上提问,都没有人能为我解决问题,难道我这么一个菜鸟的简单问题,CSDN上的高手也不会了吗?还是CSDN没落了?

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧