2009-07-18 15 views
1

Um meine Anwendung muss ich Hibernate mit Apache CXF verwenden. Problem ist, nachdem ich Hibernate zu Apache CXF konfiguriert habe, hat Anwendung nicht gestartet. Es gibt einen Fehler, der besagt, dass es die LocalSessionFactoryBean-Klasse aus dem Springframework (das ich zu dem Erstellen der FactorySession verwendete) nicht finden kann. Ich bin neu in Apache CXF, so könnte es ein Fehler in meinem Teil sein. Kann jemand von euch mir sagen, wie man Hibernate am besten mit Apache CXF konfiguriert?Wie konfiguriert man Hibernate mit Apache cxf

Vielen Dank im Voraus

Antwort

0

Verwendung CXF für Sie Service-Layer und im Backend Hibernate halten. Es sollte nicht wirklich stören, was Frühjahr oder Winterschlaf tun.

0

Das sieht wirklich wie ein Classpath-Problem aus, dass Sie irgendwie die Hiberate-Jars aus dem Klassenpfad verloren haben, wenn Sie CXF hinzufügen. Diese fehlende Bean ist eine Hibernate-Klasse.

2

Mickael Istria schrieb: Ihr Problem kann mit einem Konflikt in Bezug auf die "asm" Abhängigkeit zusammenhängen. In der Tat, CXF verwendet eine neuere "cglib" Version als Hibernate, die selbst eine neuere "Asm" verwendet, so dass es manchmal Probleme bei der Integration zusammen (Ausnahme wie NoSuchMethodError) Die Problemumgehung, die ich verwenden, ist die ersetzen alt cglib (und seine Abhängigkeit) von die cglib-nodep.jar in Ihrem Klassenpfad, das ist OK für Hibernate und nicht erfordern eine alte "Asm".

Wenn Sie Maven verwenden, sollte diese Probe helfen Ihnen zu verstehen, wie solche Konflikte lösen:

 <dependency> 
      <!-- This artifacts adds hibernate as a dependency --> 
      <groupId>org.ow2.bonita</groupId> 
      <artifactId>bonita-server</artifactId> 
      <version>4.0.1</version> 
      <scope>test</scope> 
      <exclusions> 
       <exclusion> <!-- Then remove the dependency to cglib to avoid 
conflicts with CXF's asm --> 
        <groupId>cglib</groupId> 
        <artifactId>cglib</artifactId> 
       </exclusion> 
      </exclusions> 
     </dependency> 
      <!-- Replaced old cglib by cglib-nodep --> 
     <dependency> 
      <groupId>cglib</groupId> 
      <artifactId>cglib-nodep</artifactId> 
      <version>2.1_3</version> 
     </dependency> 

ich hier die Lösung gefunden: http://mail-archives.apache.org/mod_mbox/cxf-users/200901.mbox/%[email protected]%3E

Verwandte Themen