camel-cxf-blueprint - проблема с ClassNotFoundException
Блоги
Навигационные полоски
Недавно натолкнулись на небольшую проблему и потратили некоторое время в связи с ней - вдруг наш блог сэкономит кому-нибудь время... Мы делали простой маршрут на Apache Camel с использованием Apache CXF. В blueprint был добавлен CXF Server:
<!-- CXF servers -->
<camelcxf:rsServer id="blogServiceServer" address="/api/message"
loggingFeatureEnabled="false" serviceClass="ru.entaxy.cxf.test.MessageService">
</camelcxf:rsServer>
Бандл устанавливался в Apache Karaf, куда были предварительно установлены все нужные features - cxf и camel-cxf. При установке нашего бандла вылетала ошибка Caused by: java.lang.ClassNotFoundException: org.apache.camel.component.cxf.jaxrs.blueprint.CxfRsBlueprintEndpointFactoryBean, хотя пакет org.apache.camel.component.cxf.jaxrs.blueprint прекрасно экспортируется из активного бандла camel-cxf-blueprint. В итоге эта странная проблема решилась только добавлением явного импорта пакета в maven-bundle-plugin:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>5.1.3</version>
<extensions>true</extensions>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
<configuration>
<instructions>
<Bundle-SymbolicName>entaxy-test</Bundle-SymbolicName>
<Export-Package>ru.entaxy.test.*</Export-Package>
<Import-Package>
!com.sun.xml.*,
org.apache.cxf.jaxrs.impl,
org.apache.camel.component.cxf.jaxrs.blueprint,
org.apache.camel.component.cxf.blueprint,
*</Import-Package>
</instructions>
</configuration>
</plugin>
Удачных вам интеграций!
* Рисунок для этого блога взят с https://camel.apache.org/
- 6.2 (12)
- 7.0 (12)
- activiti (14)
- apache camel (6)
- camel (11)
- devcon (6)
- devops (5)
- emdev (9)
- emdev limited (9)
- entaxy (13)
- esb (10)
- fuse (5)
- gartner (7)
- google apps (6)
- jboss (5)
- liferay (143)
- liferay 7.1 (11)
- liferay dxp (11)
- liferay7 (12)
- openshift (8)
- osgi (5)
- redhat (15)
- rest (6)
- wso2 (70)
- wso2 api-m (10)
- wso2 ei (8)
- wso2ei (5)
- wso2esb (7)
- wso2is (8)
- емдев (11)
Сайт использует файлы cookie. Они позволяют узнавать вас и получать информацию о вашем пользовательском опыте. Это нужно, чтобы улучшать сайт. Посещая страницы сайта и предоставляя свои данные, вы позволяете нам предоставлять их сторонним партнерам. Если вы согласны, продолжайте пользоваться сайтом. Если нет – установите специальные настройки в браузере или обратитесь в техподдержку.