java.lang.ClassNotFoundException: org.apache.Unterhaus.dbcp.BasicDataSource

Iam dabei ein Projekt auf spring MVC mit maven.Iam immer eine java-Fehlermeldung.lang.ClassNotFoundException: org.apache.Unterhaus.dbcp.BasicDataSource während Laufenden Projekt.Ich habe alle Abhängigkeiten, denke ich..unten meine codes.warten auf Ihre Antwort

WEB.xml

  <?xml version="1.0" encoding="UTF-8"?>
  <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <servlet>
 <servlet-name>AccPerSpring</servlet-name>
 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/servlet-context.xml</param-value>
 </init-param>
    <load-on-startup>1</load-on-startup>
 </servlet>
    <servlet-mapping>
       <servlet-name>AccPerSpring</servlet-name>
       <url-pattern>/</url-pattern>
    </servlet-mapping>
 </web-app>

servlet-context.xml

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

   <!-- Enable @Controller annotation support -->
   <mvc:annotation-driven />


   <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
         <property name="prefix" value="/WEB-INF/" />
         <property name="suffix" value=".jsp" />
   </bean>
  <context:component-scan base-package="com.gerrytan.pizzashop"/>
  <bean id="myDataSource" class=" org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> 
       <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
       <property name="url" value="jdbc:mysql://localhost:3306/mydatabase"/>
       <property name="username" value="root"/>
       <property name="password" value="kca@fnpl#12"/>
 </bean>

     <!-- Hibernate Session Factory -->
    <bean id="mySessionFactory"class="org.springframework.orm.hibernate4.LocalSessionFactoryBean>
    <property name="dataSource" ref="myDataSource"/>
    <property name="packagesToScan">
    <array>
     <value>com.gerrytan.pizzashop</value>
    </array>
   </property>
    <property name="hibernateProperties">
   <value>
    hibernate.dialect=org.hibernate.dialect.MySQLDialect
   </value>
   </property>
   </bean>

    <!-- Hibernate Transaction Manager -->
    <bean id="transactionManager"    class="org.springframework.orm.hibernate4.HibernateTransactionManager">
    <property name="sessionFactory" ref="mySessionFactory"/>
   </bean>

   <mvc:resources mapping="/resources/**" location="/WEB-INF/resources/" />
   <!-- Activates annotation based transaction management -->
   <tx:annotation-driven transaction-manager="transactionManager"/>
   </beans>

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>AccPerSpring</groupId>
     <artifactId>AccPerSpring</artifactId>
      <version>0.0.1-SNAPSHOT</version>
     <packaging>war</packaging>

     <properties>
     <spring.version>3.2.3.RELEASE</spring.version>
      <hibernate.version>4.2.2.Final</hibernate.version>
      </properties>

    <dependencies>
     <!-- Spring -->
         <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-context</artifactId>
         <version>${spring.version}</version>
        </dependency>
     <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>${spring.version}</version>
    </dependency>
   <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-orm</artifactId>
     <version>${spring.version}</version>
   </dependency>

<!-- Hibernate -->
<dependency>
  <groupId>org.hibernate</groupId>
  <artifactId>hibernate-core</artifactId>
  <version>${hibernate.version}</version>
</dependency>

<!-- Java EE -->
<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>servlet-api</artifactId>
  <version>2.5</version>
  <scope>provided</scope>
</dependency>
<dependency>
  <groupId>jstl</groupId>
  <artifactId>jstl</artifactId>
  <version>1.2</version>
</dependency>

<!-- Others -->
<dependency>
  <groupId>commons-dbcp</groupId>
  <artifactId>commons-dbcp</artifactId>
  <version>1.4</version>
</dependency>
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>5.1.25</version>
</dependency>
<dependency>
  <groupId>log4j</groupId>
  <artifactId>log4j</artifactId>
  <version>1.2.14</version>
</dependency>

 </dependencies>

   <build>
    <plugins>
     <plugin>
       <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-compiler-plugin</artifactId>
         <version>3.1</version>
       <configuration>
        <source>1.7</source>
        <target>1.7</target>
       </configuration>
     </plugin>
     </plugins>
     </build>
  </project>
  • Ist das jar in den classpath commons-dbcp.jar ?? überprüfen
  • ya sicher..aber funktioniert nicht
  • commons-dbcp-1.4.jar commons-dbcp-1.4-javadoc.jar commons-dbcp-1.4-sources.jar habe diese 3 Gläser
  • Sind Sie der Bereitstellung in Tomcat, durch Zufall?
  • Nein, konnte ich nicht.....
  • Ich habe nur bemerkt, dass Sie einen führenden Platz in der "Klasse" - Attribut Ihrer Erklärung von "myDataSource" bean. Ich werde überrascht sein, wenn dies der Fall ist, aber wahrscheinlich lohnt sich der Verzicht darauf nur für den Fall!
  • Fehler ist Weg, aber immer noch die Ausnahme in der Konsole (java.lang.ClassNotFoundException: org.apache.Unterhaus.dbcp.BasicDataSource)
  • Zeigen Sie uns Ihre Abhängigkeitsstruktur (mvn dependency:tree).
  • Kannst du bitte erstellen Sie eine Kopie der jar-Datei commons-dbcp und konvertieren Sie die Erweiterung .zip(ab .jar) und dann öffnen Sie es und sehen, ob die Klasse gesucht wird, die gibt es wirklich. Wir hatten ein ähnliches Problem bei Verwendung commons-dbcp2.jar. basierend auf den tatsächlichen Ordner-Struktur innerhalb der jar - /zip, modifizieren wir unsere datasources.xml Eintrag "org.apache.Unterhaus.dbcp2.BasicDataSource" von "org.apache.Unterhaus.dbcp.BasicDataSource" (beachten Sie die extra 2) - das löste das Problem für uns!

InformationsquelleAutor sneha | 2014-03-10
Schreibe einen Kommentar