2010-04-19 10 views
8

Ich versuche, eine Webanwendung mit Maven, Tomcat und Hibernate zu erstellen. Jetzt bekomme ich eine Klasse nicht finden für org.appache.commons.dbcp.basicdatasource für Bean mit Name Datenquelle ... Ausnahme.Orakel Hibernate + Maven Abhängigkeiten Dbcp.basicdatasource Ausnahme

Ohne die Hibernate Aspekte es funktioniert gut, aber wenn ich

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> 
    <property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"/> 
    <property name="username" value="temp"/> 
    <property name="password" value="temp"/> 
</bean> 

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> 
    <property name="dataSource" ref="dataSource"/> 
    <property name="hibernateProperties"> 
     <props> 
      <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop> 
      <prop key="hibernate.hbm2ddl.auto">create</prop> 
      <prop key="hibernate.show_sql">true</prop> 
     </props> 
    </property> 
    <property name="mappingResources"> 
     <list> 
     </list> 
    </property> 
</bean> 

meiner application hinzufügen dann bekomme ich den Fehler.

Was ich tat, war:

  • hinzufügen org.hibernate meiner pom
  • in meinem Kater Binärordner setzen ojdbc16.jar
  • das obige Snippet meiner applicationContext.xml hinzufügen

Ich benutze eine bat-Datei, um mein Projekt zu kompilieren (mit maven), kopiere es in meinen tomcat webapp-Ordner und starte den Server.

Jede Eingabe auf, was ich falsch mache, ist willkommen.

Antwort

17

Sie fehlt sehr wahrscheinlich die Abhängigkeit für Commons DBCP:

<dependency> 
    <groupId>commons-dbcp</groupId> 
    <artifactId>commons-dbcp</artifactId> 
    <version>1.4</version> 
</dependency> 
+0

Sie für die Antwort danken. Ich habe das zu meinem Pom hinzugefügt, aber ich bekomme: Fehlendes Artefakt commons-dbcp: commons-dbcp: jar: 1.4: kompilieren Ich bin noch nicht so vertraut mit Maven. Ich habe versucht, Commons-dbcp auf Scope: Kompilieren, aber das hat nicht geholfen. – Mike

+1

@Joe Das ist seltsam. Ich habe es überprüft und dieses Artefakt befindet sich definitiv im zentralen Repository. Laufen Sie Maven "online"? Wer klagen gerade über das fehlende Artefakt? –

+0

Meine compiler.I hinzugefügt: \t \t \t Repo1 \t \t \t Repo1 \t \t \t http://repo1.maven.org/maven2/ \t \t Und es doesn beklagere dich nicht mehr, also schätze ich, dass das Repository diesen Krug fehlte. – Mike