Erro em fazer consulta

bom dia :smiley:

quando eu tento fazer uma pesquisa, recebo o seguinte erro:

2006-07-20 09:55:12,842 ERROR [http-8080-Processor23] (DispatchAction.java:271) - Action[/cadSoftware] does not contain method named 
java.lang.NoSuchMethodException: br.web.blankproject.view.action.cadastros.cadsoftware.SoftwareAction.(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
	at java.lang.Class.getMethod(Class.java:986)
	at org.apache.struts.actions.DispatchAction.getMethod(DispatchAction.java:334)
	at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:266)
	at br.web.action.BasicAction.dispatchMethod(BasicAction.java:155)
	at br.web.action.BasicAction.dispatch(BasicAction.java:128)
	at br.web.filter.FilterChain.doChain(FilterChain.java:60)
	at br.web.filter.paginate.PaginateFilter.doFilter(PaginateFilter.java:34)
	at br.web.filter.FilterChain.doChain(FilterChain.java:58)
	at br.web.action.BasicAction.execute(BasicAction.java:84)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
	at java.lang.Thread.run(Thread.java:534)

e o meu SoftwareAction, está da seguinte maneira:

package br.web.blankproject.view.action.cadastros.cadsoftware;

import java.util.Collection;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import br.blankproject.business.businessdelegate.impl.SoftwareBusinessDelegate;
import br.blankproject.integration.vo.SoftwareVO;
import br.core.basic.bo.persistence.exception.GpbrPersistException;
import br.core.basic.business.delegate.BusinessDelegate;
import br.web.action.BasicAction;
import br.web.action.CadAction;
import br.web.action.exception.WebActionException;
import br.web.form.FormBean;
import br.web.form.PersistentObjectGenerate;


public class SoftwareAction extends CadAction {

    protected BusinessDelegate getBusinessDelegate() {
        return new SoftwareBusinessDelegate();
    }

    public ActionForward showInsert(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {
        return mapping.findForward("insCadSoftware");
    }

    public ActionForward showDetail(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws GpbrPersistException, WebActionException {
        try {
        	SoftwareVO softwareVO = (SoftwareVO) getBusinessDelegate().findById(((PersistentObjectGenerate)form).getPersistentObj());
            request.setAttribute("softwareVO", softwareVO);
        } catch (BrPersistException e) {
            throw new BrPersistException("Erro ao fazer consulta de Software.", e);
        }
        return mapping.findForward("detailCadSoftware");
    }

    public ActionForward pesquisar(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws WebActionException {
        try {
        	SoftwareBusinessDelegate softwareBusinessDelegate = (SoftwareBusinessDelegate) getBusinessDelegate();
            super.startPagination(request, "");
            Collection listSoftware = (Collection) softwareBusinessDelegate.findSoftwareById(((FormBean)form).getPersistentObj());
            request.setAttribute(BasicAction.TABLE_DATA_ATTRIBUTE, listSoftware);
            super.stopPagination();
        } catch (BrPersistException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return mapping.findForward("showCadSoftware");
    }

    public ActionForward showAction(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws WebActionException {
        try {
            super.startPagination(request, "");
            Collection listSoftware = getBusinessDelegate().findAll(((FormBean)form).getPersistentObj());
            request.setAttribute(BasicAction.TABLE_DATA_ATTRIBUTE, listSoftware);
            super.stopPagination();
        } catch (BrPersistException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return mapping.findForward("showCadSoftware");
    }

    public String forwardTo(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response, String commandType) {
        return "showAction";
    }
}

alguém tem alguma idéia do que pode ser?

O mapeamento no struts-config.xml está correto?

Aparentemente sim!! Olha como está meu struts-config.xml:

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

  <form-beans>
<form-bean name="softwareForm" type="br.web.blankproject.view.action.cadastros.cadsoftware.SoftwareForm" /> 
  </form-beans>

    <!-- Cadastro de Software -->
    <action path="/cadSoftware" scope="request" name="softwareForm" type="br.web.blankproject.view.action.cadastros.cadsoftware.SoftwareAction" parameter="metodo">
      <forward name="showCadSoftware" path="showCadSoftware" />
      <forward name="insCadSoftware" path="insCadSoftware" />
      <forward name="detailCadSoftware" path="detailCadSoftware" />
    </action>
    <!-- Fim Cadastro Software -->

  <plug-in className="org.apache.struts.tiles.TilesPlugin" >
    <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />
  </plug-in>
</struts-config>

Aparentemente está tudo certo…e no tiles-defs.xml está tudo ok tb…segue o tiles abaixo

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

 <!DOCTYPE tiles-definitions PUBLIC
       "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
       "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">

<tiles-definitions>	

<!-- Início Cadastro Software -->
	<definition name="showCadSoftware" extends="mainLayout">
    <put name="action" value="/cadSoftware" />
    <put name="titleViewParent" value="Cadastros" />
    <put name="titleViewMain" value="Informações Softwares" />
		<put name="body" value="/views/software/cadSoftware_show.jsp" />
	</definition>
  <definition name="insCadSoftware" extends="mainLayout">
    <put name="action" value="/cadSoftware" />
    <put name="titleViewParent" value="Cadastros" />
    <put name="titleViewMain" value="Informações Softwares" />
    <put name="body" value="/views/software/cadSoftware_ins.jsp" />
  </definition>
  <definition name="detailCadSoftware" extends="mainLayout">
    <put name="action" value="/cadSoftware" />
    <!-- put name="ONLOAD" value="javascript:exibirMensagem();" /-->
    <!-- <put name="titulo" value="/cadastros/alcada/includes/i_titulo.jsp" /> -->
    <put name="titleViewParent" value="Cadastros" />
    <put name="titleViewMain" value="Informações Softwares" />
    <put name="body" value="/views/software/cadSoftware_detail.jsp" />
  </definition>
  <!-- Fim Cadastro Software --> 
 
 
  
</tiles-definitions>

mais alguma idéia??