Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.IllegalStateException:bean name';登录页面';可用作请求属性_Java - Fatal编程技术网

java.lang.IllegalStateException:bean name';登录页面';可用作请求属性

java.lang.IllegalStateException:bean name';登录页面';可用作请求属性,java,Java,这是我的jsp页面 <form:form action="LoginSubmit" modelAttribute="LoginPage" method="POST" > <!-- UserName :<input type="text" name="username"> --> <form:input path="username" /> <form:errors path="username"/> Password :

这是我的jsp页面

<form:form action="LoginSubmit" modelAttribute="LoginPage" method="POST" >
  <!-- UserName :<input type="text" name="username"> -->
  <form:input path="username" />
  <form:errors path="username"/>
  Password : <form:password path="password"/>
  <form:errors path="password"/>  
  <input type="submit" value="submit">
</form:form>
当我运行程序时,它会抛出如下错误

java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'LoginPage' available as request attribute
org.springframework.web.servlet.support.BindStatus.<init>(BindStatus.java:141)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getBindStatus(AbstractDataBoundFormElementTag.java:178)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getPropertyPath(AbstractDataBoundFormElementTag.java:198)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getName(AbstractDataBoundFormElementTag.java:164)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.autogenerateId(AbstractDataBoundFormElementTag.java:151)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.resolveId(AbstractDataBoundFormElementTag.java:142)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.writeDefaultAttributes(AbstractDataBoundFormElementTag.java:126)
org.springframework.web.servlet.tags.form.AbstractHtmlElementTag.writeDefaultAttributes(AbstractHtmlElementTag.java:421)
org.springframework.web.servlet.tags.form.InputTag.writeTagContent(InputTag.java:142)
org.springframework.web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:102)
org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:79)
org.apache.jsp.WEB_002dINF.views.login_jsp._jspx_meth_form_005finput_005f0(login_jsp.java:200)
org.apache.jsp.WEB_002dINF.views.login_jsp._jspService(login_jsp.java:103)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)
org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)
org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
java.lang.IllegalStateException:bean名称“LoginPage”的BindingResult和普通目标对象都不能作为请求属性使用
org.springframework.web.servlet.support.BindStatus.(BindStatus.java:141)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getBindStatus(AbstractDataBoundFormElementTag.java:178)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getPropertyPath(AbstractDataBoundFormElementTag.java:198)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getName(AbstractDataBoundFormElementTag.java:164)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.autogenerateId(AbstractDataBoundFormElementTag.java:151)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.resolveId(AbstractDataBoundFormElementTag.java:142)
org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.writeDefaultAttributes(AbstractDataBoundFormElementTag.java:126)
org.springframework.web.servlet.tags.form.AbstractHtmlElementTag.writeDefaultAttributes(AbstractHtmlElementTag.java:421)
org.springframework.web.servlet.tags.form.InputTag.writeTagContent(InputTag.java:142)
org.springframework.web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:102)
org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:79)
org.apache.jsp.WEB\u 002dINF.views.login\u jsp.\u jspx\u meth\u form\u 005finput\u 005f0(login\u jsp.java:200)
org.apache.jsp.WEB\u 002dINF.views.login\u jsp.\u jsp服务(login\u jsp.java:103)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javaservlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javaservlet.http.HttpServlet.service(HttpServlet.java:728)
org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)
org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)
org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
javaservlet.http.HttpServlet.service(HttpServlet.java:621)
javaservlet.http.HttpServlet.service(HttpServlet.java:728)

这是因为在服务器返回This.jsp之前,没有方法绑定
模型属性“LoginPage”

您返回此视图的方法是什么?或者您直接使用这个.jsp

如果您将此页面直接用作默认主页,则需要修改控制器并添加一个方法,如下所示:

@RequestMapping(value = "index.do", method = RequestMethod.GET)//depends on your servlet configuration 
public final String getIndex(BindingResult bindingResult, Model model){
     LoginForm loginForm = new LoginForm();
     /*just remember to use model.addAttribute("LoginPage", loginForm)*/
     model.addAttribute("LoginPage", loginForm);
     return "index";
}
<servlet-mapping>
      <servlet-name>MyController</servlet-name>
      <url-pattern>*.do</url-pattern>
</servlet-mapping>
对于我的示例,您需要在web.xml中进行如下配置:

@RequestMapping(value = "index.do", method = RequestMethod.GET)//depends on your servlet configuration 
public final String getIndex(BindingResult bindingResult, Model model){
     LoginForm loginForm = new LoginForm();
     /*just remember to use model.addAttribute("LoginPage", loginForm)*/
     model.addAttribute("LoginPage", loginForm);
     return "index";
}
<servlet-mapping>
      <servlet-name>MyController</servlet-name>
      <url-pattern>*.do</url-pattern>
</servlet-mapping>

在显示登录页面的controller方法中,您必须将LoginForm作为model属性添加到模型中,返回登录页面的controller方法可能如下所示

@RequestMapping(value="/showLogin")
public String showLogin(Model model) {
  LoginForm LoginPage = new LoginForm();
  model.addAttribute("LoginPaeg", LoginPage);
  return "loginPage";
 }

希望这有帮助

请帮助,提前感谢错误何时出现?是在显示登录页面的时候吗?作为一个刚学过一点spring的新手。。。这就是问题所在吗