注册 登录
编程论坛 J2EE论坛

struts 的request 问题

netstriker 发布于 2007-08-19 17:34, 1558 次点击

各位高手,最近遇到一个问题,想了几天都想不明白就是
我在一个jsp页面,例如 index.jsp
<body>
<html:form action="/login">
name : <html:text property="name"/><br/>
<html:submit/><html:cancel/>
</html:form>
</body>
而在相对应的一个FormBean是
public class LoginForm extends ActionForm
{
private String name;
public void reset(ActionMapping mapping, HttpServletRequest request)
{
String name=request.getParameter("name"); //这里的name为null我怎样想都想不通,应该是jsp里name 的 // 值呀,有没有高手能解答一下~,
}
}

18 回复
#2
j2ee20082007-08-20 12:36

jsp改一下试试:

<body>
<html:form action="/login">
<html:text property="name"/>
<html:submit/><html:cancel/>
</html:form>
</body>

#3
无缘今生2007-08-20 14:43
请教楼上两位,你们写的JSP怎么和XML那么类似啊?
还有,所用的标签是不是要先定义呀?
#4
cssky2007-08-20 19:07
&lt;struts&gt;标签是这样的咯.
#5
netstriker2007-08-21 09:20
  j2ee2008 ,我地jsp代码跟你不是一样的吗?应该改那里呢?请指教~
#6
j2ee20082007-08-21 12:36
你的jsp中加这个了吗???
<%@ taglib prefix="html" uri="http://jakarta.apache.org/struts/tags-html"%>
#7
netstriker2007-08-21 17:42
   那是struts的标签呀,应该没有什么关系吧,试一下吧
#8
netstriker2007-08-21 17:43
问题还是这样,而且,<%@ taglib prefix="html" uri="http://jakarta.apache.org/struts/tags-html"%>
这一个原来就有啦.
#9
j2ee20082007-08-22 14:51
我在问一下在FormBean中:

public class LoginForm extends ActionForm
{
private String name; //这里值是多少啊???
public void reset(ActionMapping mapping, HttpServletRequest request)
{
String name=request.getParameter("name");
}
}
#10
tblovecj2007-08-22 19:01

如果我没说错,你在FormBean中:private String name;这里的name值应该是NULL

#11
神经塔2007-08-27 17:09
lz可能对里面的方法有些误解,public void reset(ActionMapping mapping, HttpServletRequest request)
方法是用来初始化前台参数的!并不是用来接受参数的,在validator方法里面是可以得到前台值的!
#12
netstriker2007-08-27 17:49
public class LoginForm extends ActionForm
{
private String name; //这里值是多少啊???
public void reset(ActionMapping mapping, HttpServletRequest request)
{
String name=request.getParameter("name");
}
}
在调用完 public void reset(ActionMapping mapping, HttpServletRequest request) 方法前当然
private String name是一个null在调用完reset方法后就会有值了,
其实我的意思很简单,就是每一次刷新的时候都可以保留原来页面的值,就是说,填在jsp页面的值,不会因为
刷新而被reset方法清空.想通过public void reset(ActionMapping mapping, HttpServletRequest request)
方法中的request参数想得到jsp页面上的值.请问高手,有其他方法吗?~~~

#13
wangagailin2007-08-29 17:00

我在问一下在FormBean中:

public class LoginForm extends ActionForm
{
private String name; //这里值是多少啊??? null值
public void reset(ActionMapping mapping, HttpServletRequest request)
{
String name=request.getParameter("name");
}
}

#14
xhdwell2007-08-31 12:24
struts-config文件里面有没配好啊?
#15
hopemosue2007-10-23 08:40

我感觉是不是你的action 后面没有post啊,试下

#16
suncf19852007-10-23 09:17
name 好像是关键字吧!

换个别的名试一下!

我以前在javaScript 中碰到 过这样的问题!
#17
子夜光2007-10-24 15:14

我是这样看的!!!!
你的jsp在被访问时,就会去调这个类的这个方法,,
所以根本就不存在提交表单!!!!
不信可以用System.out.println("???")
打一打,

#18
blackboy2007-10-25 16:50
<body>
<html:form action="/login.do">
<html:text property="name"/>
<html:submit/><html:cancel/>
</html:form>
</body>
struts里面要用.do
#19
blackboy2007-10-25 16:51
method="post"
1