Rajan, Your form name "LoginForm.do" and the action's form name of "LoginForm" do not match exactly. I recommend you change your form-bean from: I expect the ".do you added to your form-bean name to be the problem:
<form-bean name="LoginForm.do" type="myproject1.com.LoginForm"/> to: <form-bean name="LoginForm" type="myproject1.com.LoginForm"/> Regards, David -----Original Message----- From: rajan pahuja [mailto:[EMAIL PROTECTED] Sent: Monday, May 08, 2006 12:04 AM To: user@struts.apache.org Subject: ERROR 500: javax.servlet.ServletException: Cannot retrieve definition for form bean Hi I need your help.I have been getting this error for past 3 days and i have not been able to trace the reason. i m gettin ERROR 500: javax.servlet.ServletException: Cannot retrieve definition for form bean LoginForm on action /doLogin org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758) org.apache.jsp.pages.login_jsp._jspService(login_jsp.java:96) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063) org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1001) org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:560) org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:209) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) root cause javax.servlet.jsp.JspException: Cannot retrieve definition for form bean LoginForm on action /doLogin org.apache.struts.taglib.html.FormTag.lookup(FormTag.java:761) org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:443) org.apache.jsp.pages.login_jsp._jspx_meth_html_form_0(login_jsp.java:146) org.apache.jsp.pages.login_jsp._jspx_meth_html_html_0(login_jsp.java:122) org.apache.jsp.pages.login_jsp._jspService(login_jsp.java:87) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063) org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1001) org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:560) org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:209) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) Struts-Config.xml: <struts-config> <data-sources> .......... </data-sources> <form-beans> <form-bean name="LoginForm.do" type="myproject1.com.LoginForm"/> </form-beans> <global-forwards> <forward name="Welcome" path="/LoginForm.do"/> <action-mappings> <action path="/LoginForm" forward="/pages/login.jsp"></action> <action path="/doLogin" type="myproject1.com.LoginAction" name="LoginForm" scope= "request" validate="false" parameter="/pages/login.jsp"> <forward name="success" path="/Home.do" redirect="true"/> <forward name="failure" path="/LoginForm.do" /> </action> </action-mappings> <message-resources parameter="java.MessageResources" /> </struts-config> LoginForm is: package myproject1.com; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionMessage; public class LoginForm extends ActionForm { private String name=null; private String password=null; public void reset(ActionMapping mapping, HttpServletRequest request) { this.name=null; this.password=null; } public ActionErrors validate( ActionMapping mapping, HttpServletRequest request ) { ActionErrors errors = new ActionErrors(); if( getName() == null || getName().length() < 1 ) { errors.add("name",new ActionMessage("error.name.required")); } if( getPassword() == null || getPassword().length() < 1 ) { errors.add("password",new ActionMessage("error.password.required")); } return errors; } public String getName() { return name; } public String getPassword() { return password; } public void setName(String name) { this.name = name; } public void setPassword(String password) { this.password = password; } LoginAction Class is: package myproject1.com; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import javax.sql.DataSource; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import com.stocks.user.bean.UserBean; import com.stocks.user.sql.AuthenticateUser; import com.stocks.user.sql.GetUserInfo; public class LoginAction extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { LoginForm myform = (LoginForm) form; String username = myform.getName(); String password = myform.getPassword(); DataSource dataSource = getDataSource(request); if ((new AuthenticateUser()).execute( username, password, dataSource)) { HttpSession session = request.getSession(true); // get userId from database for username UserBean user = (new GetUserInfo()).execute(username, dataSource); session.setAttribute("user", user); return (mapping.findForward("success")); } else return (mapping.findForward("failure")); } } --------------------------------- Yahoo! India Answers: Share what you know. Learn something new. Click here --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]