I found it!

The problem came from the Axis WSDL2Java with the helper gen switch turned
on.  That generates "helper" classes for things like
org.apache.struts.action.ActionForm which in this case I didn't need or
want, but because the source was generated and my build picked it up and put
the resulting POJO /classes/ tree, it found it and that class didn't have
the setServlet() method, which threw the error.

I removed the helper sources, rebuilt and bingo AOK.

Obviously I could have taken those helper classes and made them extensions
of the actual struts classes and it would also have worked but since I
didn't need them anyway...poof they are gone.

I hope this helps someone else that sees this error when working with Struts
and Axis and saves them some time.

Michael Oliver
CTO
Alarius Systems LLC
6800 E. Lake Mead Blvd, #1096
Las Vegas, NV 89156
Phone:(702)643-7425
Fax:(702)974-0341
*Note new email changed from [EMAIL PROTECTED]
-----Original Message-----
From: Michael Oliver [mailto:[EMAIL PROTECTED] 
Sent: Thursday, June 23, 2005 2:19 PM
To: user@struts.apache.org
Subject: NoSuchMethodError

I added some new modules to an existing working struts application.  When
trying to access an action in the original application, I get the following
in the logs with DEBUG on org.apache.struts

 

I have made no changes to the original webapp, only added some new modules.
I checked the libs and tld and they are all consistent struts 1.1.  See the
struts-config.xml after the log snippets.

 

[http-8080-Processor25] util.RequestUtils (RequestUtils.java:1799)     - Get
module name for path /ListUsers.do

2005-06-23 20:45:33,671 DEBUG [http-8080-Processor25] util.RequestUtils
(RequestUtils.java:1821)     - Module name found: default

2005-06-23 20:45:33,671 DEBUG [http-8080-Processor25]
action.RequestProcessor (RequestProcessor.java:225)     - Processing a 'GET'
for path '/ListUsers'

2005-06-23 20:45:33,734 DEBUG [http-8080-Processor25]
action.RequestProcessor (RequestProcessor.java:640)     -  Setting user
locale 'en_US'

2005-06-23 20:45:33,734 DEBUG [http-8080-Processor25] util.RequestUtils
(RequestUtils.java:764)     -  Looking for ActionForm bean instance in scope
'request' under attribute key 'UserDisplay'

2005-06-23 20:45:33,734 DEBUG [http-8080-Processor25] util.RequestUtils
(RequestUtils.java:839)     -  Creating new ActionForm instance of type
'com.alariusj.user.UserDisplay'

2005-06-23 20:45:33,750 DEBUG [http-8080-Processor25] util.RequestUtils
(RequestUtils.java:844)     -  --> [EMAIL PROTECTED]

java.lang.NoSuchMethodError:
org.apache.struts.action.ActionForm.setServlet(Lorg/apache/struts/action/Act
ionServlet;)V
 
org.apache.struts.util.RequestUtils.createActionForm(RequestUtils.java:851)
 
org.apache.struts.action.RequestProcessor.processActionForm(RequestProcessor
.java:364)
 
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:253)
 
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
        org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts
Configuration 1.1//EN"

 
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd";>

<struts-config>

 <data-sources/>

 <form-beans>

  <form-bean name="UserDisplay" type="com.alariusj.user.UserDisplay"/>

  <form-bean name="UserInfo" type="com.alariusj.user.AJCCUserObject"/>

 </form-beans>

 <global-exceptions/>

 <global-forwards>

  <forward name="UserHome" path="/ListUsers.do"/>

 </global-forwards>

 <action-mappings>

  <action name="UserDisplay" path="/ListUsers" scope="request"

   type="com.ajcs.actions.AJCSListUsers" validate="no">

   <forward name="listUsers" path="/pages/ListUsers.jsp"/>

  </action>

  <action name="UserInfo" path="/AJCSDeleteUser" scope="request"

   type="com.ajcs.actions.AJCSDeleteUser" validate="false">

   <forward name="listUsers" path="/ListUsers.do"/>

  </action>

  <action name="UserInfo" path="/AJCSShowAddUser" scope="request"

   type="com.ajcs.actions.AJCSShowAddUser" validate="false">

   <forward name="AJCSUser" path="/pages/AJCSUser.jsp"/>

  </action>

  <action name="UserInfo" path="/AJCSShowUserInfo" scope="request"

   type="com.ajcs.actions.ACJSShowUserInfo" validate="false">

   <forward name="AJCSUser" path="/pages/AJCSUser.jsp"/>

  </action>

  <action name="UserInfo" path="/AJCSSaveUser" scope="request"

   type="com.ajcs.actions.AJCSSaveUser" validate="true">

   <forward name="listUsers" path="/ListUsers.do"/>

  </action>

 </action-mappings>

 <controller/>

</struts-config>

 

Clues as to why it is throwing that error or how to fix?  I have compared
this webapp to other working webapps object by object and setting by setting
and don't see anything that jumps out at me.  So if someone can tell me
where to look or the possible cause, it would be much appreciated.


 

Ollie


 

 

 



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

Reply via email to