Hey Priyanka,
First of all , you have to check the struts version supported by
tomcat 5.0. I believe it's either higher or lower than 1.0. Moreover I saw
that very method deprecated in 1.2.7. So may be , tomcat 5.0 uses higher
version of sruts. Anyway this is what i speculate. Will get back to you in
case I find something concrete.
Best Regards,
Santosh Rath
"Priyanka Nanda" <[EMAIL PROTECTED]>
05/19/2005 12:14 PM
Please respond to
"Struts Developers List"
To
<[email protected]>
cc
Subject
struts version compatibility problem
I am getting the following error when I use struts.jar(515kb) that comes
packaged along with tomcat5.0
root cause
java.lang.NoSuchMethodError:
org.apache.struts.tiles.DefinitionsUtil.createDefinitionsFactory(Ljavax/
servlet/ServletContext;Ljavax/servlet/ServletConfig;)Lorg/apache/struts/
tiles/ComponentDefinitionsFactory;
org.apache.struts.tiles.ActionComponentServlet.initComponentDefinitionsM
apping(ActionComponentServlet.java:71)
org.apache.struts.tiles.ActionComponentServlet.init(ActionComponentServl
et.java:57)
javax.servlet.GenericServlet.init(GenericServlet.java:211)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:118)
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79
9)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:705)
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57
7)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:683)
java.lang.Thread.run(Unknown Source)
The application runs fine when its using other struts1.0(319kb).
Contents of web.xml are as follows
<?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>
<display-name>Struts Examples Application</display-name>
<!-- Standard Action Servlet Configuration (with debugging) -->
<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>
<!-- module configurations -->
<init-param>
<param-name>config/exercise</param-name>
<param-value>/WEB-INF/exercise/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>config/upload</param-name>
<param-value>/WEB-INF/upload/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>config/validator</param-name>
<param-value>/WEB-INF/validator/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>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- Standard Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- The Usual Welcome File List -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>upload.jsp</welcome-file>
</welcome-file-list>
<!-- Struts Tag Library Descriptors -->
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
<!-- tiles not used here
<taglib>
<taglib-uri>/tags/struts-tiles</taglib-uri>
<taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
</taglib>
-->
</web-app>
Please give me some pointers as to how to solve this problem asap.
Thanks & Regrads
Priyanka