为什么死也进不了action中去,50分求答案 你是用操连接连到action的?改成submit按钮连过去试试呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 协议不一样啊!如楼上所说,换成submit! 首先看看 struts-config.xml中是否配置正确再看看链接action写法是否正确:<a href="ttaction.do">test</a> input 属性不是但验证失败时,把请求转发的url吗?建议把代码贴出来,才好帮你看啊 struts配置文件中配置action:<action path="/initUser" type="com.yumeng.strutstest.web.action.InitUserAction" //name="userForm" input="/home.jsp" 我不在此action中用actionForm,注释部分属性应该可以不要> <forward name="goIndex" path="/index.jsp" /></action> 不要注释部分的属性报: javax.servlet.ServletException: Cannot retrieve definition for form bean null on action initUser.do 郁闷,我又没有在action中使用actionForm,这两个属性应该可以不填的啊home.jsp中就一个链接:<%@ page language="java" pageEncoding="gbk"%><html> <head> <title>home.jsp</title> </head> <body> <h1 align="center"><a href="initUser.do">Struts Test</a></h1> </body></html>index.jsp页面的代码:<html><body><html:form action="deleteUser.do" > <table align="center" border="1"> <tr> <td> <bean:message key="strutstest.message.select" /> </td> <td> <bean:message key="strutstest.message.name" /> </td> <td> <bean:message key="strutstest.message.age" /> </td> <td> <bean:message key="strutstest.message.email" /> </td> <td> <bean:message key="strutstest.message.operation" /> </td> </tr> <logic:notEmpty name="users"> <logic:iterate id="user" name="users" type="com.yumeng.strutstest.po.UserInfoBean"> <tr> <td> <html:multibox styleId="delop" property="users"> <bean:write name="user" property="name" /> </html:multibox> <bean:message key="strutstest.message.select" /> </td> <td> <bean:write name="user" property="name" /> </td> <td><bean:write name="user" property="age" /> </td> <td><bean:write name="user" property="email" /> </td> <td> <ahref="deleteUser.do?strName=<bean:write name='user' property='name' />"> <bean:message key="strutstest.message.delete" /> </a> <a href="loadUser.do?strName=<bean:write name='user' property='name' />"> <bean:message key="strutstest.message.update" /> </a></td> </tr> </logic:iterate> </logic:notEmpty> <tr> <td> <input type="button" onclick="onSelects()" value="<bean:message key='strutstest.message.selectall'/>" /> </td> <td> <html:submit> <bean:message key="strutstest.message.deleteall" /> </html:submit> </td> </tr> </table> </html:form> </body></html> 不知道这是不是一个重要的线索,我如果把actionForm改成继承ActionForm的话,就可进入action中去,我之前老遇到这中问题,我本来是想用验证框架的,由于遇到不能进入action的情况,我不得以把本来继承至ValidatorForm的form改为继承至ActionForm,也就没办法用struts的验证框架了,郁闷啊,期待高人的出现!在强调一遍,我的action就做查询所有学员信息记录,并把记录存在集合中的事,然后跳转到index.jsp 这是因为你通过initUser.do转发另外一个ACTION时那个ACTION是有FORM属性的,那个继承了VILIDATEForm的ACTION由于在VILIDATEForm检测失败从而返回要INPUT指向的页面。 还不行的话把超链接地址改了<a href="<%=request.getContextPath()%>initUser.do">试试 用form的sunmit提交和用超链接提交的写法是不一样的具体我是忘了,不过好像记得超链接不用写.do,还是写.do,不用写前面的/来着 你是不是用jbuilder作为开发环境啊,我记得用vlidatorForm不会生成一个文件出现啊,就几个get/set方法,在eclipse中你是看不到这个文件的 如果不使用form,建议你直接使用<global-forwards> dream_yuit2008() 说:不要注释部分的属性报: javax.servlet.ServletException: Cannot retrieve definition for form bean null on action initUser.do 郁闷,我又没有在action中使用actionForm,这两个属性应该可以不填的啊struts是根据页面提交的表单form在struts-config.xml里找到form,然后根据form才找到action的,所以必须要有name="userForm" ,才能找到action.如果在处理action时出错则会跳到input所指的业面中去。所有我想是否是你的action中mappingforward的参数和这个不一致了呢。 <forward name="goIndex" path="/index.jsp" />仅仅是个人意见!!!! 你可以把验证写在ActionForm中啊 你做一个JS,form.action = 你的链接;form.submit();就行了 ---------------------------------------------------------------------------------fulianglove() 还不行的话把超链接地址改了<a href="<%=request.getContextPath()%>initUser.do">试试---------------------------------------------------------------------------------是正确的方法 <html:link page="/initUser"/> 你描写的一大堆,我都没怎么看明白,但大致我想问题有二在jsp中<html:form action="deleteUser.do" >action要写成struts-config.xml配置的一致,比如<html:form action="/deleteUser" >如果你写成的链接或者html标记可以是<a href="deleteUser.do"> 或者 <form action="deleteUser.do">可以用相对路路径还有因为你用的是ValidatorForm,它有它的默认 validate实现,面struts-config.xml的默认是启用validate的,所以需要禁用,action上加上validate="false"属性<action path="/deleteUser" validate="false" type="com.yumeng.strutstest.web.action.InitUserAction"还有问题,可与我联系,我的QQ是1125535,长期在线 一个你要了解的就是在进入 Action 之前Struts做了些什么事情。 1.Struts如果你用框架验证的话,在 Action的配置文件中要把validate="false"设置好,否则只要你继承ValicateForm,它就自动的去调用Validate方法进行验证,很有可能是在这验证没有通过才又跳回input所指的页面.2.你用的是链接,不是表单按钮的提交,它们两个的原理是不一样的,看看你的配置文件Struts-cfg.xml中是不是有配置不对的地方,主要是Action的配置. validate验证不正确..主要查这里就可以了.. struts2上传照片到服务器 隔一会图片就全部消失了 ssh 使用hibernate进行数据库还原,恢复操作后不能再连接此数据库 匿名线程里实现跳转 关于java ee项目 关于JAVA串口的问题,请写过的人进来看看啊(NullPointerException) 新闻系统中,新闻内容字段类型一般都用什么? jdk1.5+CORBA的问题,急!!!! jsp上传文件时如何提取文件的后缀名? 特急,产品马上就要提交,出现socket程序错误,请大家帮忙 email的检查方法 邮件自动提示,请教各位大哥 WebLogic8.x中控制台无法登陆
建议把代码贴出来,才好帮你看啊
type="com.yumeng.strutstest.web.action.InitUserAction"
//name="userForm" input="/home.jsp" 我不在此action中用actionForm,注释部分属性应该可以不要>
<forward name="goIndex" path="/index.jsp" />
</action>
不要注释部分的属性报:
javax.servlet.ServletException: Cannot retrieve definition for form bean null on action initUser.do 郁闷,我又没有在action中使用actionForm,这两个属性应该可以不填的啊
home.jsp中就一个链接:
<%@ page language="java" pageEncoding="gbk"%>
<html>
<head>
<title>home.jsp</title>
</head>
<body>
<h1 align="center"><a href="initUser.do">Struts Test</a></h1>
</body>
</html>index.jsp页面的代码:
<html>
<body>
<html:form action="deleteUser.do" >
<table align="center" border="1">
<tr>
<td>
<bean:message key="strutstest.message.select" />
</td>
<td>
<bean:message key="strutstest.message.name" />
</td>
<td>
<bean:message key="strutstest.message.age" />
</td>
<td>
<bean:message key="strutstest.message.email" />
</td>
<td>
<bean:message key="strutstest.message.operation" />
</td>
</tr>
<logic:notEmpty name="users">
<logic:iterate id="user" name="users"
type="com.yumeng.strutstest.po.UserInfoBean">
<tr>
<td>
<html:multibox styleId="delop" property="users">
<bean:write name="user" property="name" />
</html:multibox>
<bean:message key="strutstest.message.select" />
</td>
<td>
<bean:write name="user" property="name" />
</td>
<td><bean:write name="user" property="age" />
</td>
<td><bean:write name="user" property="email" />
</td>
<td>
<ahref="deleteUser.do?strName=<bean:write name='user' property='name' />">
<bean:message key="strutstest.message.delete" /> </a>
<a href="loadUser.do?strName=<bean:write name='user' property='name' />">
<bean:message key="strutstest.message.update" /> </a></td>
</tr> </logic:iterate>
</logic:notEmpty>
<tr>
<td>
<input type="button" onclick="onSelects()"
value="<bean:message key='strutstest.message.selectall'/>" /> </td>
<td>
<html:submit>
<bean:message key="strutstest.message.deleteall" />
</html:submit>
</td>
</tr> </table>
</html:form>
</body>
</html>
和用超链接提交的写法是不一样的
具体我是忘了,不过好像记得超链接不用写.do,还是写.do,不用写前面的/来着
我记得用vlidatorForm不会生成一个文件出现啊,就几个get/set方法,在eclipse中你是看不到这个文件的
不要注释部分的属性报:
javax.servlet.ServletException: Cannot retrieve definition for form bean null on action initUser.do 郁闷,我又没有在action中使用actionForm,这两个属性应该可以不填的啊struts是根据页面提交的表单form在struts-config.xml里找到form,然后根据form才找到action的,所以必须要有name="userForm" ,才能找到action.如果在处理action时出错则会跳到input所指的业面中去。所有我想是否是你的action中mappingforward的参数和这个不一致了呢。 <forward name="goIndex" path="/index.jsp" />仅仅是个人意见!!!!
form.action = 你的链接;
form.submit();
就行了
fulianglove()
还不行的话把超链接地址改了<a href="<%=request.getContextPath()%>initUser.do">试试
---------------------------------------------------------------------------------
是正确的方法
<html:form action="deleteUser.do" >
action要写成struts-config.xml配置的一致,比如
<html:form action="/deleteUser" >如果你写成的链接或者html标记可以是
<a href="deleteUser.do"> 或者 <form action="deleteUser.do">
可以用相对路路径还有因为你用的是ValidatorForm,它有它的默认 validate实现,面struts-config.xml的默认是启用validate的,所以需要禁用,action上加上validate="false"属性<action path="/deleteUser" validate="false"
type="com.yumeng.strutstest.web.action.InitUserAction"还有问题,可与我联系,我的QQ是1125535,长期在线
2.你用的是链接,不是表单按钮的提交,它们两个的原理是不一样的,看看你的配置文件Struts-cfg.xml中是不是有配置不对的地方,主要是Action的配置.
主要查这里就可以了..