在FuseESB中部署JAR会获得ClassNotFoundException

时间:2014-08-29 12:20:14

标签: spring maven apache-camel apache-karaf fuseesb

我在camel-cxf.xml文件中有这个:

<bean id="configFile" class="org.apache.camel.spring.spi.BridgePropertyPlaceholderConfigurer">
        <property name="location" value="file:${karaf.home}/etc/test.cfg"/>
</bean>

test.cfg就在那里。我的pom.xml有以下内容,它解析为版本2.12.0.redhat-610379:

<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-spring</artifactId>
</dependency>

这一切都很好。但当我把它放在Fuse的部署文件夹中时,我得到:

Caused by: java.lang.ClassNotFoundException: org.apache.camel.spring.spi.BridgePropertyPlaceholderConfigurer not found by myService [257]
        at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)

所以我认为这是我的OSGi没有骆驼/弹簧,但我现在已经完成'功能:安装X'用于骆驼和弹簧的每种可能的变化,并且它不会改变任何东西。

有谁知道我错过了什么?

1 个答案:

答案 0 :(得分:1)

我认为您需要在捆绑包中导入org.apache.camel.spring.spi包。