关于hibernate中关联关系的提交表单问题

qq_23686481 2015-09-17 03:32:00
就是这样的,我的Student与Adress是many-to-one关系,与Course是many-to-many关系,都是单向的。

public class Student {
private Integer sid;
private String scname;
private String sename;
private Date birthday;
private Address address;
private Set<Course> courses=new HashSet<Course>();
get,set方法省略
}

然后我想在jsp页面提交一个表单

<body>
<s:form action="addStudent" namespace="/" method="post" >
<table>
<tr><td>学生编号:<s:textfield name="student.sid"/></td></tr>
<tr><td>学生中文名:<s:textfield name="student.scname"/></td></tr>
</tr><td>学生英文名:<s:textfield name="student.sename"/></td></tr>
</tr><td>出生日期:<sx:datetimepicker name="student.birthday" displayFormat="yyyy-MM-dd" toggleType="explode" toggleDuration="400"/></td></tr>
</tr><td>出生地点:<s:select name="address" list="addresslist" listKey="aid" listValue="aname" /></td></tr>
</tr><td>选修科目:<s:checkboxlist name="student.courses" list="courselist" listKey="cid" listValue="cname" /></td></tr>
<td align="center"><input type="submit" value="增加" />  <input type="reset" value="重置" /></td>
</table>
</s:form>
</body>

问题就是出生地点以及选修科目代码行我不知道标签中的name属性究竟应该写什么,应该是student.address 还是直接address,然后在action中get出来再set到Address对象中再set到Student对象中?而且不管我写什么都有一个问题就是报错误:
警告: Error setting expression 'address' with value '[Ljava.lang.String;@5549f0e'
ognl.MethodFailedException: Method "setAddress" failed for object com.bean.web.action.StudentAction@41c17a8c [java.lang.NoSuchMethodException: com.bean.web.action.StudentAction.setAddress([Ljava.lang.String;)]
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1285)
初学没多久,请大神们帮个忙。
...全文
44 点赞 收藏 回复
写回复
回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-09-17 03:32
社区公告
暂无公告