struts的错。。。。。Cannot find bean userName in scope request

dd121011 2008-05-29 01:09:17
严重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Cannot find bean userName in scope request
at org.apache.struts.util.RequestUtils.lookup(RequestUtils.java:940)
at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:286)
at org.apache.jsp.userLoginSuccess_jsp._jspx_meth_bean_write_0(userLoginSuccess_jsp.java:162)
at org.apache.jsp.userLoginSuccess_jsp._jspx_meth_html_html_0(userLoginSuccess_jsp.java:118)
at org.apache.jsp.userLoginSuccess_jsp._jspService(userLoginSuccess_jsp.java:68)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
...全文
447 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
snake09003232 2008-05-29
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 ayueiloveyou 的回复:]
<bean:write name="userName" scope="request" />
改成:
<bean:write property="userName" scope="request" />
因为name一般代表ActionForm
[/Quote]
dd121011 2008-05-29
  • 打赏
  • 举报
回复
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.yourcompany.struts.form;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;

/**
* MyEclipse Struts
* Creation date: 05-28-2008
*
* XDoclet definition:
* @struts.form name="userLoginForm"
*/
public class UserLoginForm extends ActionForm {
/*
* Generated fields
*/

/** userName property */
private String userName;

/** passWord property */
private String passWord;

/*
* Generated Methods
*/

/**
* Method validate
* @param mapping
* @param request
* @return ActionErrors
*/
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// TODO Auto-generated method stub
return null;
}

/**
* Method reset
* @param mapping
* @param request
*/
public void reset(ActionMapping mapping, HttpServletRequest request) {
// TODO Auto-generated method stub
}

/**
* Returns the userName.
* @return String
*/
public String getUserName() {
return userName;
}

/**
* Set the userName.
* @param userName The userName to set
*/
public void setUserName(String userName) {
this.userName = userName;
}

/**
* Returns the passWord.
* @return String
*/
public String getPassWord() {
return passWord;
}

/**
* Set the passWord.
* @param passWord The passWord to set
*/
public void setPassWord(String passWord) {
this.passWord = passWord;
}
}
自动生成的。。。应该没什么问题把
whetu 2008-05-29
  • 打赏
  • 举报
回复
把你的UserLoginForm拿出来晒一下
burningice44 2008-05-29
  • 打赏
  • 举报
回复
Cannot find bean userName in scope request


userName属性应该放入他对应的bean中,再将bean放入request中
这样应该可以得到了
我是小辉辉 2008-05-29
  • 打赏
  • 举报
回复
<bean:write name="userName" scope="request" />
改成:
<bean:write property="userName" scope="request" />
因为name一般代表ActionForm
M_song 2008-05-29
  • 打赏
  • 举报
回复
bean:write要的是bean,不是字段
你的userName是个字段,而不是你的formbean
Shine_Panda 2008-05-29
  • 打赏
  • 举报
回复
看一下你的action中是否有
requuest.setAttribute("userName","一个值");
这句话。
如果直接访问这个页面 要先判断 userName 是否为空。
dd121011 2008-05-29
  • 打赏
  • 举报
回复
我存了啊。。
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserLoginForm userLoginForm = (UserLoginForm) form;// TODO Auto-generated method stub
if(userLoginForm.getUserName().equals("abcd")&&userLoginForm.getPassWord().equals("abcd")){
request.setAttribute("userName", userLoginForm.getUserName());

System.out.println("username:" + userLoginForm.getUserName() + "passWord:" +userLoginForm.getPassWord());
return mapping.findForward("success");
}else{
return mapping.findForward("error");

}
}
}
难道我存的不对?
lisl2003 2008-05-29
  • 打赏
  • 举报
回复
学习一下
zhj92lxs 2008-05-29
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lydiablo 的回复:]
userName没存到request,当然抛EX
[/Quote]
lydiablo 2008-05-29
  • 打赏
  • 举报
回复
userName没存到request,当然抛EX
siyue_qi 2008-05-29
  • 打赏
  • 举报
回复
action代码看看。
把你的<bean:write name="userName" scope="request" />
userName换成你的form(bean)的名字试试。
dd121011 2008-05-29
  • 打赏
  • 举报
回复
是不是jsp里的标签有问题啊?
<%@ page language="java" pageEncoding="ISO-8859-1"%>

<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-template" prefix="template" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-nested" prefix="nested" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html locale="true">
<head>
<html:base />

<title>userLoginSuccess.jsp</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<body>
This a struts page. <br>Hello <bean:write name="userName" scope="request" />
</body>
</html:html>

67,537

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧