4:55:43,984 ERROR ActionComponent:218 - Could not execute action: /frame/'Privilege!list.action'
com.opensymphony.xwork.config.ConfigurationException: There is no Action mapped for namespace /frame and action name 'Privilege. Check if there is such an action name with such namespace defined in the xwork.xml and also if such an action class exists. Check also the log to see if the action class is successfully loaded. 说是出现这个错误!!!web.xml<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app>
<display-name>ctgl</display-name>
<filter>
        <filter-name>webwork</filter-name>
        <filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>webwork</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>


<!-- This needs to be after Spring ContextLoaderListener -->
<listener>
<listener-class>com.opensymphony.webwork.spring.lifecycle.SpringExternalReferenceResolverSetupListener</listener-class>
</listener>
<!-- spring -->
<listener>
<listener-class>com.opensymphony.webwork.spring.WebWorkSpringObjectFactory</listener-class>
</listener>
    
<!-- WebWork -->
<servlet>
<servlet-name>webwork</servlet-name>
<servlet-class>com.opensymphony.webwork.dispatcher.ServletDispatcher</servlet-class>
</servlet>
<!-- WebWork -->
<servlet-mapping>
<servlet-name>webwork</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
<!-- ============================welcome page========================= --> 
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>   <!-- ============================== taglib =========================== -->
<taglib>
<taglib-uri>webwork</taglib-uri>
<taglib-location>/WEB-INF/webwork.tld</taglib-location>
</taglib>
<resource-ref>
<description>queen</description>
<res-ref-name>jdbc/queen</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>

</web-app>
applicationcontext.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 
"http://www.springframework.org/dtd/spring-beans.dtd"><beans>
<!-- ============================== dataSource =========================== -->
<bean id="dataSource" 
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</property>
<property name="url">
<value>jdbc:microsoft:sqlserver://localhost;DatabaseName=WHUT_JXGL</value>
</property>
<property name="username">
<value>sa</value>
</property>
<property name="password">
<value>shen</value>
</property>
</bean>

<!-- JNDI DataSource for J2EE environments -->
<!--
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName"><value>java:comp/env/jdbc/wygldb</value></property>
</bean>
-->
<!-- ============================== Hibernate SessionFactory  =========================== -->
<bean id="sessionFactory" 
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref local="dataSource"/>
</property>
<property name="mappingResources">
<list>
<!-- ===========================-sys-========================== -->
        <value>xtgl/cxgl/entity/User.hbm.xml</value>
        <value>xtgl/cxgl/entity/Role.hbm.xml</value>
<value>xtgl/cxgl/entity/UserRole.hbm.xml</value>
<value>xtgl/cxgl/entity/Privilege.hbm.xml</value>
<value>xtgl/cxgl/entity/RolePrivilege.hbm.xml</value>
<value>xtgl/cxgl/entity/Model.hbm.xml</value>
<value>xtgl/cxgl/entity/Department.hbm.xml</value>
<value>xtgl/cxgl/entity/Employee.hbm.xml</value>
<!-- ============================== codeTable =========================== -->
<value>xtgl/dmwh/entity/Codenavigation.hbm.xml</value>
<value>xtgl/dmwh/entity/Codetable.hbm.xml</value>
<value>xtgl/dmwh/entity/Codecheck.hbm.xml</value>
<value>xtgl/dmwh/entity/CodetableEdit.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.jdbc.batch_size">25</prop>
<prop key="hibernate.use_outer_join">true</prop>
</props>
</property>
</bean>
<!-- ============================== TransactionManager  =========================== -->
<bean id="hibernateTransactionManager" 
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<bean id="jdbcTransactionManager" 
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean>

<!-- ============================== baseTransactionProxyBean  =========================== -->
<bean id="baseTransactionProxyBean" lazy-init="true" 
      class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> 
      <property name="transactionManager"> 
         <ref bean="hibernateTransactionManager" /> 
      </property> 
      <property name="transactionAttributes"> 
         <props> 
            <prop key="*">PROPAGATION_REQUIRED</prop>
         </props> 
      </property> 
    </bean>
    <!-- ============================== baseTransactionProxyBean for jdbc  =========================== -->
<bean id="baseJdbcTransactionProxyBean" lazy-init="true" 
      class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> 
      <property name="transactionManager"> 
         <ref bean="jdbcTransactionManager" /> 
      </property> 
      <property name="transactionAttributes"> 
         <props> 
            <prop key="*">PROPAGATION_REQUIRED</prop>
         </props> 
      </property> 
    </bean>
<!-- ============================== dbDao  =========================== -->
    <bean id="dbDaoTarget" class="xtgl.dbdao.DbDaoImpl">
        <property name="dataSource">
<ref local="dataSource"/>
</property>
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
    </bean>
    <bean id="dbDao" parent="baseTransactionProxyBean">
<property name="target">
<ref local="dbDaoTarget"/>
</property>
</bean>
<!-- ============================== xtgl start  =========================== -->
<bean id="sysDao" parent="baseTransactionProxyBean">
<property name="target">
<bean id="sysDaoTarget" class="xtgl.cxgl.service.SysDaoImpl">
<property name="dbDao">
<ref local="dbDaoTarget"/>
</property>
</bean>
</property>
</bean>
<bean id="deptService" parent="baseTransactionProxyBean">
<property name="target">
<bean id="deptServiceTarget" class="xtgl.cxgl.service.DeptServiceImpl">
<property name="dbDao">
<ref local="dbDaoTarget"/>
</property>
</bean>
</property>
</bean>
    <!-- ============================== sys end  =========================== -->
    
    <!-- ============================== codeTableService =========================== -->
<bean id="codeTableService" parent="baseTransactionProxyBean">
<property name="target">
<bean id="codeTableServiceTarget" class="xtgl.dmwh.service.CodeTableServiceImpl">
<property name="dbDao">
<ref local="dbDaoTarget"/>
</property>
</bean>
</property>
</bean>  
<!-- ============================== dmwh =========================== -->
<bean id="codeGeneratorService" parent="baseTransactionProxyBean">
<property name="target">
<bean id="codeGeneratorServiceTarget" class="xtgl.dmwh.service.CodeGeneratorServiceImpl">
<property name="dbDao">
<ref local="dbDaoTarget"/>
</property>
</bean>
</property>
</bean>
    <!-- ======dmlist===== -->
<bean id="dmListService" parent="baseTransactionProxyBean">
<property name="target">
<bean id="dmListServiceTarget" class="xtgl.dmwh.service.DmListServiceImpl">
<property name="dbDao">
<ref local="dbDaoTarget"/>
</property>
</bean>
</property>
</bean>
    

</beans>xwork.xmlu部分
package name="sys_privilege" extends="default"> 
    <action name="Privilege" class="xtgl.cxgl.action.PrivilegeAction">     
        <result name="listpri" type="dispatcher">
            <param name="location">list.jsp</param>
        </result>
<result name="modifypri" type="dispatcher">
            <param name="location">selprivilege.jsp</param>
        </result>
<result name="add" type="dispatcher">
<param name="location">Privilege!listpri.action</param>
</result>    
        <interceptor-ref name="defaultStack"/>
    </action> 
    </package>    

解决方案 »

  1.   

    jsp的部分
    <%@ page language="java" contentType="text/html;charset=GBK"%>
    <%@ taglib prefix="ww" uri="/webwork"%>
    <HTML><HEAD>
    <link href="<%= request.getContextPath() %>/css/dtree.css" rel="stylesheet" type="text/css">
    <script type="text/javascript" src="<%=request.getContextPath()%>/js/dtree.js"></script>
    </HEAD><BODY bgColor=#DDF0FB leftMargin=0 topMargin=0 marginwidth="0" marginheight="0">
    <ww:action name = "'Privilege!list.action'" id="t"/>
    <table width="90%" border="0" cellspacing="1" cellpadding="2" align="center" >
    <tr>
    <div class="dtree">
    <script type="text/javascript">
    <!--
    d = new dTree('d');

    <ww:iterator value="#t.privilegeOfRole">
    <ww:if test="parent_id==null">
    d.add(Number(<ww:property value="id"/>),-1,'<ww:property value="name"/>');
    </ww:if>
    <ww:elseif test="parent_id!=null">
    <ww:if test="islink.equals(\"0\")">
    d.add(Number(<ww:property value="id"/>),Number(<ww:property value="parent_id"/>),'<ww:property value="name"/>','','','right');
    </ww:if>
        <ww:else>
      d.add(Number(<ww:property value="id"/>),Number(<ww:property value="parent_id"/>),'<ww:property value="name"/>','<%=request.getContextPath()%>/<ww:property value="url"/>','','right');
    </ww:else>
    </ww:elseif>
    </ww:iterator>
    document.write(d);
    //-->
    </script>
    </div>
    </tr>
    </table>
    </BODY>
    </HTML>
          
      

  2.   

    LZ检查下倒数第5行:
    <param name="location">Privilege!listpri.action </param> 
      

  3.   

    <ww:action name = "'Privilege!list.action'" id="t"/> 
    这两个引号多余了吧,虽然我没用过webwork
      

  4.   


    什么错误?我用webwork2.1.7时没有问题