我的应用程序,我需要使用休眠与Apache CXF。问题是我配置休眠到Apache cxf后,应用程序没有启动。它给出了一个错误,说它无法从springframework(我用来创建factorySession)中找到LocalSessionFactoryBean类。 我是新来的Apache cxf,所以它可能是我的错误。你们中的任何人都可以告诉我用apache cxf配置hibernate的最佳方法是什么?如何配置休眠使用Apache cxf
在此先感谢
我的应用程序,我需要使用休眠与Apache CXF。问题是我配置休眠到Apache cxf后,应用程序没有启动。它给出了一个错误,说它无法从springframework(我用来创建factorySession)中找到LocalSessionFactoryBean类。 我是新来的Apache cxf,所以它可能是我的错误。你们中的任何人都可以告诉我用apache cxf配置hibernate的最佳方法是什么?如何配置休眠使用Apache cxf
在此先感谢
利用CXF为您服务层,并保持休眠在后端。它不应该干扰什么春天或冬眠。
这实际上看起来像一个类路径问题,您在添加CXF时会以某种方式丢失类路径中的缓存jar。缺少的bean是一个hibernate类。
Mickael Istria写道: 您的问题可能与“asm”依赖冲突有关。事实上, CXF采用了较新的“CGLIB”版本比冬眠,本身采用了较新的 “汇编”,使之整合他们在一起时 (异常如的NoSuchMethodError)有时会造成问题 我使用的解决方法是更换旧的cglib(及其依赖)通过 cglib-nodep.jar在你的类路径中,这对于休眠是可以的,而不是 需要一个旧的“asm”。
如果你使用Maven,这个样本可以帮助你了解如何解决 这种冲突:
<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>
我发现这里的解决方案:http://mail-archives.apache.org/mod_mbox/cxf-users/200901.mbox/%[email protected]%3E