Hello there! I'm having a strange problem with my struts app (1.2.9),
it's been a long time since the last time I've used struts (being in
the Swing world for a while now).

The application launches an error on startup:

  [java] SEVERE: Parsing error processing resource path
/WEB-INF/struts-config.xml
    [java] java.lang.NoSuchMethodException: No such accessible
method: addForwardConfig() on object: com.acme.AcmeAction
    [java] at 
org.apache.commons.digester.Digester.createSAXException(Digester.java:2792)
    [java] at 
org.apache.commons.digester.Digester.createSAXException(Digester.java:2818)
    [java] at 
org.apache.commons.digester.Digester.endElement(Digester.java:1070)
    [java] at 
oracle.xml.parser.v2.NonValidatingParser.parseElement(NonValidatingParser.java:1257)
    [java] at 
oracle.xml.parser.v2.ValidatingParser.parseRootElement(ValidatingParser.java:143)
    [java] at 
oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:281)
    [java] at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:196)
    [java] at org.apache.commons.digester.Digester.parse(Digester.java:1572)
    [java] at 
org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:738)
    [java] at 
org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:687)
    [java] at 
org.apache.struts.action.ActionServlet.init(ActionServlet.java:333)
    [java] at javax.servlet.GenericServlet.init(GenericServlet.java:258)
    [java] at 
com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2354)
    [java] at 
com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4795)
    [java] at 
com.evermind.server.http.HttpApplication.initPreloadServlets(HttpApplication.java:4889)
    [java] at 
com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1015)
    [java] at 
com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:549)
    [java] at 
com.evermind.server.Application.getHttpApplication(Application.java:890)
    [java] at 
com.evermind.server.http.HttpServer.getHttpApplication(HttpServer.java:707)
    [java] at 
com.evermind.server.http.HttpSite.initApplications(HttpSite.java:625)
    [java] at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:278)
    [java] at 
oracle.oc4j.admin.internal.WebApplicationBinder.bindWebApp(WebApplicationBinder.java:173)
    [java] at 
com.evermind.server.administration.DefaultApplicationServerAdministrator.bindWebApp(DefaultApplicationServerAdministrator.java:415)
    [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [java] at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [java] at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [java] at java.lang.reflect.Method.invoke(Method.java:589)
    [java] at 
com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
    [java] at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
    [java] at 
com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
    [java] at java.lang.Thread.run(Thread.java:620)

Well, I've checked the Action class and it really does not have an
addForwardConfig method.

Here's my struts-config.xml:

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

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

<struts-config>

<!-- ================================================ Form Bean Definitions -->

   <form-beans>
                <form-bean name="votarForm" 
type="com.acme.AcmeForm"></form-bean>
   </form-beans>


<!-- ========================================= Global Exception Definitions -->

   <global-exceptions>

   </global-exceptions>


<!-- =========================================== Global Forward Definitions -->

   <global-forwards>
                <forward name="principal" path="def.principal"></forward>
   </global-forwards>


<!-- =========================================== Action Mapping Definitions -->

   <action-mappings>
                 <action path="/votar" scope="request" validate="true"
                                 className="com.acme.AcmeAction" 
name="votarForm">
                        <forward name="success" 
path="def.regionalVotacao"></forward>
                        <forward name="failure" path="def.votacao"></forward>
                 </action>
   </action-mappings>


<!-- ============================================= Controller Configuration -->

   <controller
      processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>


<!-- ======================================== Message Resources Definitions -->

   <message-resources parameter="MessageResources" />

   <plug-in className="org.apache.struts.tiles.TilesPlugin" >

     <set-property property="definitions-config"
                      value="/WEB-INF/tiles-defs.xml" />
     <set-property property="moduleAware" value="true" />
   </plug-in>


 <!-- =================================================== Validator plugin -->

 <plug-in className="org.apache.struts.validator.ValidatorPlugIn">

   <set-property
       property="pathnames"
       value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
 </plug-in>

</struts-config>

All the files (validation, validator and tiles) are placed under the
WEB-INF in the war file.

My AcmeAction extends ActionSupport from Spring's helper classes.
First I thought was this, but then I've changed it to a regular
action, and the problem persists. As it throws an Severe message, I'm
guessing this is the cause that I can't access my application (when I
try to access the index.jsp) I get an 500 Error complaining about not
having a principal ActionForward defined on my global-forwards.

BTW here's index.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
   pageEncoding="UTF-8"%>
<%@ include file="include/taglibs.jsp" %>

<logic:forward name="principal"/>

Any ideas please?


Regards

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to