首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

struts<html:form>标签有关问题  解决立即给分

2013-09-11 
strutshtml:form标签问题 在线等 解决立即给分新手学struts 在jsp页面想用一个表单,可是一用到<html:for

struts<html:form>标签问题 在线等 解决立即给分
新手学struts 在jsp页面想用一个表单,可是一用到<html:form> </html:form> 标签就出现问题~希望各位高手帮帮我这菜鸟.多谢各位大虾了.
我用的是struts   的标准框架.struts.war解压出来的.
jsp   页面的代码

<%@   page   contentType= "text/html;charset=GB2312 "   %>
<%@   taglib   uri= "/tags/struts-bean "   prefix= "bean "   %>
<%@   taglib   uri= "/tags/struts-html "   prefix= "html "   %>
<%@   taglib   uri= "/tags/struts-logic "   prefix= "logic "   %>


<html:form   action= "/Register.do "   focus= "userName ">
<html:text   property= "userName "/>
<html:text   property= "pwdf "/>
<html:text   property= "pwds "/>
<html:text   property= "nickName "/>
<html:text   property= "sex "/>
<html:text   property= "email "/>
<html:text   property= "cardId "/>
<html:text   property= "level "/>
<html:text   property= "registerDate "/>
<html:submit   property= "submit "   value= "提交 "/>
<html:reset/>
</html:form>

下面是错误代码:
HTTP   Status   500   -  

--------------------------------------------

type   Exception   report

message  

description   The   server   encountered   an   internal   error   ()   that   prevented   it   from   fulfilling   this   request.

exception  

org.apache.jasper.JasperException:   Cannot   retrieve   definition   for   form   bean   RegisterForm   on   action   /Register.do
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root   cause  

javax.servlet.ServletException:   Cannot   retrieve   definition   for   form   bean   RegisterForm   on   action   /Register.do
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:843)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:776)
org.apache.jsp.Register_jsp._jspService(Register_jsp.java:81)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root   cause  

javax.servlet.jsp.JspException:   Cannot   retrieve   definition   for   form   bean   RegisterForm   on   action   /Register.do
org.apache.struts.taglib.html.FormTag.lookup(FormTag.java:767)
org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:443)
org.apache.jsp.Register_jsp._jspx_meth_html_form_0(Register_jsp.java:98)
org.apache.jsp.Register_jsp._jspService(Register_jsp.java:74)


org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


note   The   full   stack   trace   of   the   root   cause   is   available   in   the   Apache   Tomcat/5.5.20   logs.

但是要是把jsp页面的代码换成下面的就能显示:
<%@   page   contentType= "text/html;charset=GB2312 "   %>
<%@   taglib   uri= "/tags/struts-bean "   prefix= "bean "   %>
<%@   taglib   uri= "/tags/struts-html "   prefix= "html "   %>
<%@   taglib   uri= "/tags/struts-logic "   prefix= "logic "   %>
<html:submit/>



[解决办法]
在struts config xml 中,看看 你的RegisterForm 有没有定义
[解决办法]
你使用 <html:form> 标记就必须在struts-config.xml中配置 <form-beans>
[解决办法]
如果你在Action 里定义了name= "RegisterForm "那么,你必须在 <form-beans> </form-beans> 中定义这个RegisterForm
[解决办法]
把 <html:form action= "/Register.do " focus= "userName ">

改成 <html:form action= "Register.do " focus= "userName "> 试试
[解决办法]
<html:form action= "/Register.do " focus= "userName ">
改一下,去掉 "/ ": <html:form action= "Register.do " focus= "userName ">

[解决办法]
看一下, 你有没有定义RegisterForm这个java类,如果你没有定义这个类的话,肯定会报这样的错误
[解决办法]
你FORM里的ACTION 写错了
要么写成
<html:form action= "Register.do " focus= "userName ">
或者
<html:form action= "/Register " focus= "userName ">

[解决办法]
<html:form action= "Register.do " focus= "userName " method= "POST ">
[解决办法]
是你检查Register.jsp里面错误可能有语法错误什么的 你要插入数据库的字段插入进去了吧
[解决办法]
<html:form action= "/Register.do " focus= "userName ">
为什么不行 我就是这么用 可以找到的
[解决办法]
把 <html:form> 标签前加上 <html:html>
</html:form> 后加上 </html:html>
[解决办法]
myplat.web.struts.form下存在RegisterForm??
别计较FORM那里问题了 用那种方法都是可以的
我的异常网推荐解决方案:The server encountered an internal error () that prevented it from fulfilling this request.,http://www.myexception.cn/java-web/317.html

热点排行