请教struts2.0里的问题

xdy2008 2009-04-09 07:20:20
我是做一个用户登录系统:
action:

public String addUser(String userName,String password,Date birthday,String phone) throws Exception{

User user=new User();
userName=user.getUserName();
password=user.getPassword();
phone=user.getPhone();
birthday=user.getBirthday();

LoginService service=new LoginImpl();
service.addUser(userName, password, phone);

if(userName==null){
return "fail";
}

return "addUser";
}


struts配置如下:
<struts>
<package name="login" extends="struts-default">
<action name="addUser" class="com.login.action.LoginAction" method="addUser">
<result name="addUser">/jsp/addUser.jsp</result>
<result name="fail">/jsp/error.jsp</result>
</action>

</package>
</struts>


运行的结果是:java.lang.NoSuchMethod...
为什么会这样呀?请大家帮忙解决下.

急...
...全文
85 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
台城柳月 2009-04-11
  • 打赏
  • 举报
回复
把userName password birthday phone 这4个字段写成
LoginAction的4个带有getter/setter方法的属性,
然后把addUser()方法改成无参数方法

提交时会自动把相同name的表单元素的值与action的属性进行绑定
要取这4个字段的值可直接从action的属性中获得
jumpheightway 2009-04-11
  • 打赏
  • 举报
回复
配置里面加上<param>
gongyali2005 2009-04-10
  • 打赏
  • 举报
回复
public class LoginAction extends ActionSupport {



private String username;

private String password;

private int age;
//spring DI
private LoginService loginser;


public LoginService getLoginser() {
return loginser;
}

public void setLoginser(LoginService loginser) {
this.loginser = loginser;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}



public String execute() throws Exception {





if (loginser.isLogin(username, password)) {

return SUCCESS;
} else {
return INPUT;
}

}


}
redlotus_lyn 2009-04-10
  • 打赏
  • 举报
回复
Action method名形式同execute()方法一样。
tyrone_wang 2009-04-10
  • 打赏
  • 举报
回复
你应该仔细看下struts2的帮助文档
feiling111222 2009-04-09
  • 打赏
  • 举报
回复
struts2的ACTION里面要写个public String execute()方法,没有参数

然后在这个方法里面调用你那个ADDUSER就好了
hh05061107cm 2009-04-09
  • 打赏
  • 举报
回复
action函数方法addUser()方法应该没有参数的吧

获得userName等的值是使用
public void setUserName(String userName){
this.userName=userName;
}
public String getUserName(){
return userName;
}
不知道我讲的对不对?你先试下咯
xdy2008 2009-04-09
  • 打赏
  • 举报
回复
自己先顶下...等待ING....

81,095

社区成员

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

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