public interface IBean {
public java.io.Serializable getId();
}
[code=Java][code=Java]public class UserInfo implements IBean {
private Integer id;
private String userName; public Integer getId() {
return this.id;
} public void setId(Integer id) {
this.id = id;
} public String getUserName() {
return this.userName;
} public void setUserName(String userName) {
this.userName = userName;
}
}页面的<s:textfield name="userInfo.id"></s:textfield>传值到action 得不到id,为什么?java.lang.IllegalArgumentException: id to load is required for loading
解决方案 »
- 求助关于cannot be resolved to a type问题
- Tomcat5.5+MSSQL连接多数据库怎么设计连接池
- 为什么会有这样的错误 求高手教啊
- 如何访问WEB-INF下的JSP页面数据
- js怎么获取分帧页面元素
- SOAP发布
- tomcat4与tomcat5版本问题
- 请问一个用Weblogic7.x的projiect编译时为何提示:java.net.ConnectException: Operation timed out: connect
- 大家帮忙看一看,Tomcat远程访问mysql的问题在线等,本人刚来论坛分嫌少的以后补,谢了
- 请ejb高手帮忙!
- Hql语句支持待定实体吗
- 新手提问: struts 中的表联合问题
如果要通过这种方式获取值的话<s:textfield name="userInfo.id">
你在Action里要有userInfo这个实体对象的get、set方法,这样就可以用你那种方式取得值。
lz 如果想通过 对象.属性的方法去赋值, 那么你的action中必须
定义属性: private UserInfo userInfo;
这样才能获取userInfo.id.
private UserInfo userInfo; 还是得不到userInfo.id
把接口改为
public interface IBean {
public Integer getId();
}
就可以得到,为什么呢还有接口定义成这样
public interface IBean {
public java.io.Serializable getId();
}
是为了实现有联合主键的情况
你要使用这方法在页面传值的你的java代码里只要在有接受的userInfo这个对象的get和set函数就可以啦
关于实现 java.io.Serializable 接口的类是可序列化,建议可以查阅相关使用手册。
<s:textfield name="id"> </s:textfield> 就好了
Struts2里用的是值栈,用id直接让它自己找好了
我现在把接口中的方法名改了,也得到想要的结果,但是我就是不懂为什么这样就得不到id了,仅此而已