ContextLoaderListener的ClassNotFoundException

时间:2013-10-10 13:23:50

标签: java eclipse spring maven

问题:

即使我的Maven项目构建路径在Maven Dependencies中有spring-web-3.2.0.RELEASE.jar,我仍然会收到错误。此外,jar也存在于存储库中。 当我检查了我的Maven项目的部署程序集时,我发现它已经拥有了Maven依赖项源。我看到'ContextLoaderListener'类文件也出现在spring-web-3.2.0.RELEASE.jar中。 请帮我解决这个问题。

错误:

  

com.ibm.ws.webcontainer.webapp.WebApp logError SRVE0293E:[Servlet   错误] - [无法加载监听器:   org.springframework.web.context.ContextLoaderListener]:   java.lang.ClassNotFoundException:class   抛出java.lang.ClassNotFoundException:   org.springframework.web.context.ContextLoaderListener

WAR pom.xml:

    <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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
        <groupId>com.java.common</groupId>
        <artifactId>policyaccess</artifactId>
     <version>0.0.1-SNAPSHOT</version>
 </parent>

<groupId>com.java.common</groupId>
<artifactId>policyaccess-ws</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>policyaccess-ws Maven Webapp</name>
<url>http://maven.apache.org</url>

<properties>
    <spring.version>3.2.0.RELEASE</spring.version>
</properties>
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <!-- <artifactId>org.springframework.context</artifactId> -->
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <!--       <artifactId>org.springframework.context.support</artifactId> -->
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <!-- <artifactId>org.springframework.web</artifactId> -->
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <!-- <artifactId>org.springframework.web.servlet</artifactId> -->
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <!-- <artifactId>org.springframework.transaction</artifactId> -->
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <!-- <artifactId>org.springframework.orm</artifactId> -->
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>commons-dbcp</groupId>
        <artifactId>commons-dbcp</artifactId>
        <version>1.4</version>
    </dependency>
    <dependency>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>jaxws-rt</artifactId>
        <version>2.1</version>
    </dependency>
    <dependency>
        <groupId>com.java.common.policyaccess</groupId>
        <artifactId>policyaccess-common</artifactId>
        <version>1.0</version>
    </dependency>
    <dependency>
        <groupId>net.sf.jt400</groupId>
        <artifactId>jt400</artifactId>
        <version>6.7</version>
    </dependency>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>1.6.10</version>
    </dependency>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>1.6.10</version>
    </dependency>
    <dependency>
        <groupId>javassist</groupId>
        <artifactId>javassist</artifactId>
        <version>3.9.0.GA</version>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>3.6.0.Final</version>
    </dependency>
    <dependency>
        <groupId>com.sun.xml.messaging.saaj</groupId>
        <artifactId>saaj-impl</artifactId>
        <version>1.3.1</version>
    </dependency>
    <dependency>
        <groupId>org.jvnet.jax-ws-commons.spring</groupId>
        <artifactId>jaxws-spring</artifactId>
        <version>1.8</version>
        <exclusions>
            <exclusion>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>com.java.common.dao</groupId>
        <artifactId>bw-dao</artifactId>
        <version>1.1</version>
     </dependency>
     <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-expression</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
    </dependency>
</dependencies>

<build>
    <finalName>policyaccessws</finalName>
    <plugins>
        <plugin>
            <groupId>org.jvnet.jax-ws-commons</groupId>
            <artifactId>jaxws-maven-plugin</artifactId>
            <version>2.2</version>
            <executions>
                <execution>
                    <goals>
                        <goal>wsimport</goal>
                    </goals>
                    <configuration>
                        <verbose>true</verbose>
                        <packageName>com.java.common.ws</packageName>
                        <keep>true</keep>
                        <wsdlDirectory>${basedir}/src/main/resources</wsdlDirectory>
                        <wsdlFiles>
                            <wsdlFile>services/AutoPolicy-v1.wsdl</wsdlFile>
                        </wsdlFiles>
                        <!-- <wsdlLocation>${host.root}/*</wsdlLocation> -->
                        <sourceDestDir>${basedir}/src/gen/java</sourceDestDir>
                        <target>2.0</target>
                    </configuration>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <artifactId>maven-clean-plugin</artifactId>
            <version>2.5</version>
            <configuration>
                <filesets>
                    <fileset>
                        <directory>${basedir}/src/gen/java</directory>
                        <includes>
                            <include>**/*.java</include>
                        </includes>
                    </fileset>
                </filesets>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1.1</version>
            <configuration>
                <filters>
                    <filter>${basedir}\src\main\filters\config-qa.properties</filter>
                </filters>
                <webResources>
                    <resource>
                        <directory>${basedir}/src/main/webapp</directory>
                        <filtering>true</filtering>
                    </resource>
                </webResources>
            </configuration>
        </plugin>
    </plugins>
    <pluginManagement>
        <plugins>
            <!--This plugin's configuration is used to store Eclipse m2e settings 
                only. It has no influence on the Maven build itself. -->
            <plugin>
                <groupId>org.eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>
                                        org.jvnet.jax-ws-commons
                                </groupId>
                                    <artifactId>
                                        jaxws-maven-plugin
                                </artifactId>
                                    <versionRange>[2.2,)</versionRange>
                                    <goals>
                                        <goal>wsimport</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <ignore></ignore>
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
  </build>
   </project>

EAR pom.xml

 <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>com.java.common</groupId>
 <artifactId>policyaccess-wsEAR</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <packaging>ear</packaging>
 <name>policyaccess-wsEAR</name>
 <url>http://maven.apache.org</url>

 <properties>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <build>
  <plugins>
   <plugin>
   <artifactId>maven-compiler-plugin</artifactId>
   <configuration>
     <source>1.5</source>
     <target>1.5</target>
    <encoding>UTF-8</encoding>
  </configuration>
  </plugin>

   <plugin>
    <artifactId>maven-ear-plugin</artifactId>
    <configuration>
     <version>1.4</version>
    <modules>
      <webModule>
        <groupId>com.java.common</groupId>
        <artifactId>policyaccess-ws</artifactId>
        <bundleFileName>policyaccess-ws.war</bundleFileName>
        <contextRoot>/policyaccess-ws</contextRoot>
      </webModule>
    </modules>
    <displayName>policyaccess-wsEAR</displayName>
    <!-- If I want maven to generate the application.xml, set this to true -->
    <generateApplicationXml>true</generateApplicationXml>
  </configuration>
  </plugin>
  <plugin>
  <artifactId>maven-resources-plugin</artifactId>
  <version>2.4</version>
  <configuration>
    <encoding>UTF-8</encoding>
  </configuration>
</plugin>
 </plugins>
 <finalName>policyaccess-wsEAR</finalName>
</build>

  <!-- Define the versions of your ear components here -->
<dependencies>
<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>
<dependency>

<groupId>com.java.common</groupId>
<artifactId>policyaccess-ws</artifactId>
<version>0.0.1-SNAPSHOT</version>
  <type>war</type>
  </dependency>
 </dependencies>
 </project>

0 个答案:

没有答案