2013-04-14 95 views
0

我是新的maven,我正在尝试使用struts2,Hibernate和spring3构建应用程序。异常启动过滤器struts2无法加载配置。 - 行动

当我尝试在tomcat服务器上部署我的应用程序时,出现以下错误。

SEVERE: Exception starting filter struts2 
Unable to load configuration. - action - file:/C:/Prashant/WorkSpace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/EmployeeManagementSystem/WEB-INF/classes/struts.xml:17:64 
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58) 
    at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360) 
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:403) 
    at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69) 
    at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:48) 
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:273) 
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:254) 
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:372) 
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98) 
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4461) 
    at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5133) 
    at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5128) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
    at java.lang.Thread.run(Thread.java:619) 
Caused by: Action class [dispEmployeeAction] not found - action - file:/C:/Prashant/WorkSpace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/EmployeeManagementSystem/WEB-INF/classes/struts.xml:17:64 
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyAction(XmlConfigurationProvider.java:405) 
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:355) 
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:460) 
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:265) 
    at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111) 
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:189) 
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55) 
    ... 16 more 
14 Apr, 2013 1:58:28 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error filterStart 
14 Apr, 2013 1:58:28 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/EmployeeManagementSystem] startup failed due to previous errors 
14 Apr, 2013 1:58:28 PM org.apache.catalina.core.ApplicationContext log 
INFO: Closing Spring root WebApplicationContext 

此错误消息说,Action类[dispEmployeeAction]没有找到 - 行动 - 文件:/ C:/Prashant/WorkSpace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/ wtpwebapps/EmployeeManagementSystem/WEB-INF/classes/struts.xml:17:64 但在我的struts.xml中,我将此操作映射到下面。

<?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="flase"></constant> 
    <constant name="struts.devMode" value="true"></constant> 

    <package name="default" extends="struts-default"> 

     <interceptors> 
      <interceptor name="myInterceptor" class="action.MyInterceptor"></interceptor> 
     </interceptors> 

     <!-- For Employee Action mapping --> 
     <action name="dispEmployeeAction" class="dispEmployeeAction"> 
      <result name="success">/employee_add.jsp</result> 
     </action> 

     <action name="employeeAction" class="employeeAction"> 
      <result name="input">/employee_add.jsp</result> 
      <result name="list">/employee_list.jsp</result> 
     </action> 

     <action name="dispEmployeeListAction" class="dispEmployeeListAction"> 
      <result name="success">/employee_list.jsp</result> 
     </action> 

     <action name="employeeListAction" class="employeeListAction"> 
      <result name="success">/employee_list.jsp</result> 
      <result name="new">/employee_add.jsp</result> 
     </action> 

    </package> 
</struts> 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>EmployeeManagementSystem</groupId> 
    <artifactId>EmployeeManagementSystem</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 
    <name>EmployeeManagementSystem</name> 
    <description>EmployeeManagementSystem</description> 
    <dependencies> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-core</artifactId> 
      <version>3.5.4-Final</version> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-core</artifactId> 
      <version>2.1.6</version> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-dojo-plugin</artifactId> 
      <version>2.3.8</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-aop</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-context</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-aspects</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-beans</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-orm</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-jdbc</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>3.2.1.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-hibernate3</artifactId> 
      <version>2.0.7</version> 
     </dependency> 
     <dependency> 
      <groupId>log4j</groupId> 
      <artifactId>log4j</artifactId> 
      <version>1.2.17</version>   
     </dependency> 
     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <version>5.1.24</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring</artifactId> 
      <version>2.5</version> 
     </dependency> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-jdk14</artifactId> 
      <version>1.5.8</version> 
     </dependency> 
     <dependency> 
      <groupId>javassist</groupId> 
      <artifactId>javassist</artifactId> 
      <version>3.12.1.GA</version> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-tiles-plugin</artifactId> 
      <version>2.3.8</version> 
     </dependency> 
    </dependencies> 
</project> 
+4

所以,你是在一个Spring配置文件中声明你的动作,我假设,但我没有看到你的Spring配置文件在任何地方。使诊断更加困难。你也包括*非常*不同版本的Spring作为依赖关系,这几乎*从来不是一个好主意,除非你非常确定你正在做什么,而不是你自己。 –

+1

该课程应该是FQCN。 –

+0

而DynamicMethodInvocation应该是'false'而不是'flase' –

回答

0

你已经把Struts 2个的罐子在Tomcat库目录pom.xml的是以下几点:

造成:豆型类com.opensymphony.xwork2.ObjectFactory与 名称xwork已经由bean加载 - jar:file:/ C:/apache-tomcat-7.0.25-windows-x86/apache-tomcat-7.0.25/lib/struts2-core-2.3.4.1 .jar!/struts-default.xml:29:72

从servlet容器中删除与Struts相关的库;只在您的应用中部署它们。