File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Struts and the fly likes Where am I supposed to put the struts jar file? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Frameworks » Struts
Bookmark "Where am I supposed to put the struts jar file?" Watch "Where am I supposed to put the struts jar file?" New topic
Author

Where am I supposed to put the struts jar file?

Bob Pettit
Greenhorn

Joined: Feb 18, 2005
Posts: 16
I just installed Tomcat and deployed my struts application (which works with Websphere) and now I'm getting
Cannot find ActionMappings or ActionFormBeans collection.
I am confident that this is happening because the struts jar files can not be located.

I have all the struts jar file in the lib directory under the WEB-INF folder.

Thanks for the help
Merrill Higginson
Ranch Hand

Joined: Feb 15, 2005
Posts: 4864
This message is not necessarily the result of a bad placement of the struts.jar file. It indicates that the Struts Action servlet did not initialize properly. This could happen because of one of two things:

1. You didn't specify <load-on-startup>1</load-on-startup> in the Actoin servlet definition in web.xml.

2. The Action servlet is throwing an exception when it tries to initialize. Check your SystemOut log to see if there are any errors when the application starts up.


Merrill
Consultant, Sima Solutions
Henry Lowell
Ranch Hand

Joined: May 29, 2006
Posts: 63
I don't think that's the reason. What is the full stack trace? And do you have all the struts config files in the appropriate locations?


Hank
Bob Pettit
Greenhorn

Joined: Feb 18, 2005
Posts: 16
I have this included in my web.xml file. The

<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>validate</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>FindModels</servlet-name>
<display-name>FindModels</display-name>
<servlet-class>com.dealer.web.ajax.FindModels</servlet-class>
</servlet>

This is the full stack trace

org.apache.jasper.JasperException: Cannot find ActionMappings or ActionFormBeans collection
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
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 find ActionMappings or ActionFormBeans collection
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp.pages.login_jsp._jspService(login_jsp.java:93)
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:332)
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 find ActionMappings or ActionFormBeans collection
org.apache.struts.taglib.html.FormTag.lookup(FormTag.java:747)
org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:443)
org.apache.jsp.pages.login_jsp._jspx_meth_html_form_0(login_jsp.java:109)
org.apache.jsp.pages.login_jsp._jspService(login_jsp.java:83)
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:332)
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)


This project is working with no problems on websphere. So I'm pretty sure I have all the files I need and web.xml and struts-config files are structred properly.
Thanks for the help
Merrill Higginson
Ranch Hand

Joined: Feb 15, 2005
Posts: 4864
Since you have included a <load-on-startup> tag, this problem is most likely occuring due to the Struts Action servlet throwing an exception when it tries to initialize.

The stack trace you've shown us is the one that is occurring when you try to display your login JSP, and it's not particularly useful.

You need to look at the Server's SystemOut and SystemErr logs when the server is first starting up and look for exceptions being thrown by the Action servlet. Once you have found the error in these logs, show us the stack trace that occurs there.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Where am I supposed to put the struts jar file?