User类public class User implements Serializable {
private String username;
private String password; public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
}
}Action类:
public class LoginAction extends ActionSupport {
User[] user = new User[10];
public String execute() throws Exception {
System.out.println(user[0].getUsername());
System.out.println(user[0].getPassword());
System.out.println(user[1].getUsername());
System.out.println(user[1].getPassword());
return super.execute();
}
public User[] getUser() {
return user;
}
public void setUser(User[] user) {
this.user = user;
}
}jsp页面:
<s:form action="login.action">
<s:textfield label="username-1" name="user[%{0}].username"/>
<s:password label="password-1" name="user[%{0}].password" maxlength="6"/>
<s:textfield label="username-2" name="user[%{1}].username"/>
<s:password label="password-2" name="user[%{1}].password" maxlength="6"/>
<s:submit/>
</s:form>我这个写法对么????为什么action不能成功拿到user数组里的值呢???是不是需要什么添加其他的配置。、、、着急在线等
private String username;
private String password; public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
}
}Action类:
public class LoginAction extends ActionSupport {
User[] user = new User[10];
public String execute() throws Exception {
System.out.println(user[0].getUsername());
System.out.println(user[0].getPassword());
System.out.println(user[1].getUsername());
System.out.println(user[1].getPassword());
return super.execute();
}
public User[] getUser() {
return user;
}
public void setUser(User[] user) {
this.user = user;
}
}jsp页面:
<s:form action="login.action">
<s:textfield label="username-1" name="user[%{0}].username"/>
<s:password label="password-1" name="user[%{0}].password" maxlength="6"/>
<s:textfield label="username-2" name="user[%{1}].username"/>
<s:password label="password-2" name="user[%{1}].password" maxlength="6"/>
<s:submit/>
</s:form>我这个写法对么????为什么action不能成功拿到user数组里的值呢???是不是需要什么添加其他的配置。、、、着急在线等
解决方案 »
- 连接池超过最大连接数问题
- 请问如下的界面该怎么设计呢?
- j2ee启动错误
- 初学hibernate,高手请进,指点一下。
- SQLServer 2000 Driver for JDBC SQLServer无法打开登录 'COMPUTER' 中请求的数据库。登录失败。是怎么回事?
- 既可以连接oracle又可以连接sqlserver的类有哪位高手写过?? 请指教
- Struts:往Sqlserver数据库添加数据,执行过程没有任何错误提示,在数据库中缺没有写进去,但是自动编号的Id号缺增加了。
- jsp学一年了,大的站点做过两个。现在不知道该怎么学。什么struts,EJB,J2EE的。不知道怎么下手。望高手给个指点
- 如何合成几个J2EE到JBuilde里头??
- 关于java中volatile实现可见性的疑问
- structs1&&structs2
- js小问题
<s:textfield label="username-1" name="user[0].username"/>
<s:password label="password-1" name="user[0].password" maxlength="6"/>
<s:textfield label="username-2" name="user[1].username"/>
<s:password label="password-2" name="user[1].password" maxlength="6"/>
<s:submit/>
</s:form>反正都没结果,成堆这样打印异常。。警告: Error setting value
ognl.OgnlException: target is null for setProperty(null, "password", [Ljava.lang.String;@16b61c3)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1651)
at ognl.ASTProperty.setValueBody(ASTProperty.java:101)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)
at ognl.SimpleNode.setValue(SimpleNode.java:246)
at ognl.ASTChain.setValueBody(ASTChain.java:172)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)
这个只是输出语句;
你应该这样:user[0].setUsername("");
User[] user = new User[10]; 别new 仅仅把他当成个属性,你既然写了set和get 方法。不搭理他。。你JSP上只有2个User的信息。你又new了10个。你让框架给你赋值也就能赋2个User的。其他8个铁定是空的。
setter 机制吧,你从EXECUTE 里直接用 getUserName()即可取值。如果像你这样写,把MODEL和ACTION分开写,你必须实现 ACTION,MODELDRIVEN接口。不行再找我。