我有个jsp页面,form中有个<input type="text" name="user.name" />在我的action种有个私有成员private User user,User中有无参构造、所有属性的set、get方法。可是我在execute()中user为null。我用request.get...(user.name)可以取得输入的值。想问下可能产生的原因?自我分析:首先程序运行,当提交表单时正常进入execute()方法。再request能去到值。同一个工程下有一个别的页面有类似的用法(不是User)可以直接取得,不为空。求大侠指教!!
解决方案 »
- struts2自定义拦截器中返回错误信息的问题!
- struts.1.3.10中配置data-sources时候出现错误?
- 找个小型数据库
- eclipse中启动tomcat出错
- Struts 1.3中DynaActionForm的转型问题
- 大家看看,一个很奇怪的问题啊,能不能帮忙解决一下啊,谢谢了
- 如何在jboss中部署we应用?
- jbuilder 建立cmp ejb是连接oracle的一个问题,在线等待
- Run On Server
- maven web项目本地上好的,部署到服务器上tomcat启动报错
- 页面显示,js处理问题
- org.hibernate.MappingException: Unknown entity
interceptor 中没加params的?
/**
* DarwRegister entity.
*
* @author MyEclipse Persistence Tools
*/public class DarwRegister implements java.io.Serializable { // Fields private Integer id;
private String username;
private String role;
private String areacode;
private String other; // Constructors /** default constructor */
public DarwRegister() {
} /** full constructor */
public DarwRegister(String username, String role, String areacode,
String other) {
this.username = username;
this.role = role;
this.areacode = areacode;
this.other = other;
} // Property accessors 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;
} public String getRole() {
return this.role;
} public void setRole(String role) {
this.role = role;
} public String getAreacode() {
return this.areacode;
} public void setAreacode(String areacode) {
this.areacode = areacode;
} public String getOther() {
return this.other;
} public void setOther(String other) {
this.other = other;
}}
action 中 也要有setUser getUser方法
private User acct;
private IUserService userService;
public String execute(){
userService.addUser(acct);
return SUCCESS;
} public User getAcct() {
return acct;
} public void setAcct(User acct) {
this.acct = acct;
} public void setUserService(IUserService userService) {
this.userService = userService;
}
}
private User acct;
private IUserService userService;public String execute(){
userService.addUser(acct);
return SUCCESS;
}public User getAcct() {
return acct;
}public void setAcct(User acct) {
this.acct = acct;
}public void setUserService(IUserService userService) {
this.userService = userService;
}public User getModel(){
return user;
}}
private User acct;
private IUserService userService;public String execute(){
userService.addUser(acct);
return SUCCESS;
}public User getAcct() {
return acct;
}public void setAcct(User acct) {
this.acct = acct;
}public void setUserService(IUserService userService) {
this.userService = userService;
}public User getModel(){
return acct;//这里刚刚写错了
}}
JSP中 要用Struts标签
很明显你现在还在用html标签。
你的form中的标签:<input type="text" name="user.name" />建议这么使用:<input type="hidden" name="username" value="<s:property value="#user.name"/>"/>其次,你要了解struts2中的action的应用,聚合对象的目的作用是不大的,主要是要用对象的getter和setter法方。
建议先好好看看相关资料。
所以<input type="text" name="acct.name" />