<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
 
<struts>
<!--
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    
    <include file="example.xml"/>
    <package name="default" namespace="/" extends="struts-default">
        <default-action-ref name="index" />
        <action name="index">
            <result type="redirectAction">
                <param name="actionName">HelloWorld</param>
                <param name="namespace">/example</param>
            </result>
        </action>
    </package>
 -->
    <!-- Add packages here -->
    <!--<constant name="struts.objectFactory" value="spring" />-->
    <constant name="struts.devMode" value="true" />
   
<package name="weibao" namespace="/" extends="struts-default">
<action name="saveAction" class="saveMainConAction">
<result name="success">/login.jsp</result>
<result name="input">/index.jsp</result>
</action>

</package>
</struts><?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<!--
<property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"></property>
<property name="url" value="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hitachi"></property>
<property name="username" value="sa"></property>
<property name="password" value=""></property> 
-->
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/hitachi"></property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
<property name="maxActive" value="100"></property>
<property name="maxIdle" value="30"></property>
<property name="maxWait" value="500"></property>
<property name="defaultAutoCommit" value="true"></property>
</bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="hibernateProperties">
<props>
<!--  
<prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
<prop key="hibernate.show_sql">true</prop>
-->
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/contract/weibao/bean/MainCon.hbm.xml</value>
</list>
</property>
</bean>

<bean id="mainconDao" class="com.contract.weibao.dao.impl.MainConDAOImpl" scope="singleton">
<property name="sessionFactory"> 
<ref bean="sessionFactory"/>
</property>
</bean>

<bean id="mainconService" class="com.contract.weibao.service.impl.MainConServiceImpl">
<property name="mainconDao" ref="mainconDao"></property>
</bean>
<bean id="saveMainConAction" class="com.contract.weibao.action.SaveMainConAction">
<property name="service" ref="mainconService"></property>
</bean>
</beans>Struts Problem ReportStruts has detected an unhandled exception:Messages:
saveMainConAction
Unable to instantiate Action, saveMainConAction, defined for 'saveAction' in namespace '/'saveMainConAction
File: org/apache/catalina/loader/WebappClassLoader.java
Line number: 1,387
StacktracesUnable to instantiate Action, saveMainConAction, defined for 'saveAction' in namespace '/'saveMainConAction
    com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:307)
    com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:388)
    com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:187)
    org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
    org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
    com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:478)
    org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    java.lang.Thread.run(Thread.java:619)
    
java.lang.ClassNotFoundException: saveMainConAction
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
    com.opensymphony.xwork2.util.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:146)
    com.opensymphony.xwork2.ObjectFactory.getClassInstance(ObjectFactory.java:96)
    com.opensymphony.xwork2.spring.SpringObjectFactory.getClassInstance(SpringObjectFactory.java:212)
    com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:132)
    com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:139)
    com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:109)
    com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:288)
    com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:388)
    com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:187)
    org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
    org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
    com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:478)
    org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    java.lang.Thread.run(Thread.java:619)
    
You are seeing this page because development mode is enabled. Development mode, or devMode, enables extra debugging behaviors and reports to assist developers. To disable this mode, set:  struts.devMode=false
in your WEB-INF/classes/struts.properties file.

解决方案 »

  1.   

    <package name="weibao" namespace="/" extends="struts-default">
    <action name="saveAction" class="saveMainConAction">
    <result name="success">/login.jsp</result>
    <result name="input">/index.jsp</result>
    </action>
    是不是应该写成class="com.contract.weibao.action.SaveMainConAction"
      

  2.   

    to: sadamdiyi 
    我是用SPRING 注入的啊!是写那个没问题的啊!
      

  3.   

    TO:sxzlc
    我将冲突的那个包移走后就出现这个问题
      

  4.   

    可能是struts2和spring整合没有成功。
    首先把:
    <action name="saveAction" class="saveMainConAction">
     改成: <action name="saveAction" class="com.contract.weibao.action.SaveMainConAction"> 
    看看还会不会报错。如果不报错,那么struts2和spring整合没有成功的可能性很大。第2步;看看struts2-spring-plugin-2.1.8.1.jar是否已经加到classpath里了。另外楼主的struts2的版本是多少?
      

  5.   

    好像struts2.0.8之前的版本整合spring需要加上
    <constant name="struts.objectFactory" value="spring"></constant>
      

  6.   

    Unable to instantiate Action, saveMainConAction, defined for 'saveAction' in namespace '/'saveMainConAction
    不能全看懂上面这句(英语烂),但问题好像出在namespace '/'上吧,在你的struts的配置文件中配两个package却用相同的namespace,我没这样试过,所以不敢说绝对用问题,但看起来很别扭。另外在你配置第一个package里的index action时,好像并没有指定class 
    <action name="index">
    配置action标签时至少需要class和type属性中的一个,也指定同时出现一个。
    两个地方先改改再试试吧
      

  7.   

    我也试过!还是不行!我是在STRUTS。XNL里加的。
      

  8.   

    我曾经试过,是没问题的!但一写action name="saveAction"  就出现那问题!
    请问到底要怎么解决啊!!我弄了几天了!!