jQuery in Action, 2nd edition*
The moose likes Struts and the fly likes Cannot find ActionMappings or ActionFormBeans collection Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Frameworks » Struts
Bookmark "Cannot find ActionMappings or ActionFormBeans collection" Watch "Cannot find ActionMappings or ActionFormBeans collection" New topic
Author

Cannot find ActionMappings or ActionFormBeans collection

Nicola Guy
Ranch Hand

Joined: Jun 23, 2004
Posts: 91
Any ideas wot would throw this error???

javax.servlet.ServletException: Cannot find ActionMappings or ActionFormBeans collection
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.registeruser.index_jsp._jspService(index_jsp.java:90)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
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:810)

root cause

javax.servlet.jsp.JspException: Cannot find ActionMappings or ActionFormBeans collection
org.apache.struts.taglib.html.FormTag.lookup(FormTag.java:798)
org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:506)
org.apache.jsp.registeruser.index_jsp._jspx_meth_html_form_0(index_jsp.java:146)
org.apache.jsp.registeruser.index_jsp._jspx_meth_html_html_0(index_jsp.java:122)
org.apache.jsp.registeruser.index_jsp._jspService(index_jsp.java:82)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
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:810)


Thanx for any help you can give me because im realy stuck
Pankaj Narang
Ranch Hand

Joined: Jun 07, 2004
Posts: 81
Hi Guy

The problem you arer getting is due to the action maping or bean not present in the struts-config file

Check in your jsp file whether the path given in form:action is present in your struts-config file.

Best regards
Pankaj
Nicola Guy
Ranch Hand

Joined: Jun 23, 2004
Posts: 91
As far as I can tell the action mappings and the form beans are both there.

This is the file index.jsp that creates the bean:



<%@ page language="java" %>

<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>

<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>

<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>

<%@ taglib uri="/WEB-INF/struts-form.tld" prefix="form" %>

<html:html locale="true">

<head>

<title>Welcome to RegisterUser</title>

</head>

<body>

<html:form action="/login.do">

<bean:message key="prompt.login" />

<html:text property="login" />

<br />

<bean:message key="prompt.password" />

<html assword property="password" />

<br />

<html:submit>

<bean:message key="index.login" />

</html:submit>

</html:form>

</body>

</html:html>




And this is the struts-config.xml file that has the mappings and beans:



<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.0//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_0.dtd">


<struts-config>

<form-beans>
<!-- Logon form bean -->
<form-bean name="loginForm"
type="/src/LoginForm"/>
</form-beans>

<global-forwards>
<forward name="mainmenu"path="/mainmenu.jsp" />


<forward name="login" path="/login.jsp"/>
</global-forwards>

<action-mappings>

<!-- Process a user logon -->
<action path="/login.do"
type="/src/LoginAction"
name="loginForm"
scope="session"
input="/index.jsp">
</action>

<action>
name ="LoginForm"
</ action>
</action-mappings>

<message-resources parameter="application"/>


</struts-config>



Can u help with that?
Pankaj Narang
Ranch Hand

Joined: Jun 07, 2004
Posts: 81
hi guy

I think the path given in the action mapping should be only "/login" and check for the struts-config path given in web.xml that may solve the problem

Best Regards
Pankaj
Nicola Guy
Ranch Hand

Joined: Jun 23, 2004
Posts: 91
I only added the .do as a last resort, didn't think it would work anyway.

heres my web.xml file i still can't see a problem

<?xml version="1.0" encoding="ISO-8859-1"?>



<!DOCTYPE web-app

PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"

"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">



<web-app>



<!-- Action Servlet Configuration -->

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>



<!-- Resources bundle base class -->

<init-param>

<param-name>application</param-name>

<param-value>ApplicationResources</param-value>

</init-param>



<!-- Context-relative path to the XML resource containing Struts configuration information -->

<init-param>

<param-name>config</param-name>

<param-value>/WEB-INF/struts-config.xml</param-value>

</init-param>


<!-- Setting the locale parameter -->

<init-param>

<param-name>locale</param-name>

<param-value>true</param-value>

</init-param>


<!-- The debugging detail level for this servlet, which controls how much information is logged. -->

<init-param>

<param-name>debug</param-name>

<param-value>2</param-value>

</init-param>



<load-on-startup>0</load-on-startup>

</servlet>





<!-- Action Servlet Mapping -->

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>





<!-- The Welcome File List -->

<welcome-file-list>

<welcome-file>registeruser/index.jsp</welcome-file>

</welcome-file-list>



<!-- Struts Tag Library Descriptors -->

<taglib>

<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>

</taglib>



<taglib>

<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-html.tld</taglib-location>

</taglib>



<taglib>

<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>

</taglib>



</web-app>
Pankaj Narang
Ranch Hand

Joined: Jun 07, 2004
Posts: 81
hi guy

your web.xml is correct but i think problem is with path only you should check that one .

Best Regards
pankaj
Pankaj Narang
Ranch Hand

Joined: Jun 07, 2004
Posts: 81
If this also wont work try one more thing in your action mapping and form bean mapping , put the value of type as the full package of the formbean like if u have something like this com.test.Loginform and com.test.loginaction as you know the package is displayed at the top of your java file try this also.

Best Regards
Pankaj
Nicola Guy
Ranch Hand

Joined: Jun 23, 2004
Posts: 91
Just want to say thanx for your help. I still can't get it working but i appriciate you trying
Faris Syed
Greenhorn

Joined: Jun 25, 2004
Posts: 8
I am not sure if you got your answer yet, but here is a suggestion

you have defined your form-bean in a wrong way, bean has to be in a package under web-inf/classes/ folder not in src folder

for example if your class is in com/user/mypack/LoginForm.java after you compiled it put your class file under
web-inf/classes/com/user/mypack/LoginForm.class

then your struts-config.xml file should have this entry

<form-beans>
<!-- Logon form bean -->
<form-bean name="loginForm"
type="com.user.mypack.LoginForm"/>
</form-beans>

good luck
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Cannot find ActionMappings or ActionFormBeans collection
 
Similar Threads
Cannot find ActionMappings or ActionFormBeans collection
Error
Cannot find ActionMappings or ActionFormBeans collection
problem in Struts Internationalization:Error 500:Cannot find message resources
form page cannot find ActionMappings or ActionFormbeans