Не удалось загрузить функцию cxf в Karaf 4.0

Я пытаюсь использовать Karaf для размещения службы REST. Я использую версию 4.0.0 M2 (поскольку мой прототип находится на ранней стадии). Из того, что я собрал воедино, для размещения службы REST я могу использовать функции Karaf для установки функций http и cxf.

Что я сделал до сих пор ...

  • завел караф - завел нормально
  • настройте его, чтобы найти мой локальный репозиторий maven - отлично
  • использовал feature:repo-add mvn:org.apache.cxf.karaf/apache-cxf/3.0.4/xml/features - это работало без ошибок, и я вижу xml в моем репозитории mvn
  • запустил feature:install http - это сработало, и я вижу доказательства работы кода Jetty
  • побежал feature:install cxf - это не удается

Я получаю это сообщение в консоли

karaf@root()> функция: install cxf Ошибка при выполнении команды: невозможно разрешить root: отсутствует требование [root] osgi.identity; osgi.identity=cxf-http-jetty; тип = karaf.feature; версия = 3.0.4 [вызвано: невозможно разрешить cxf-http-jetty/3.0.4: отсутствует требование [cxf-http-jetty/3.0.4] osgi.identity; osgi.identity=org.apache.cxf.cxf-rt-transports-http-jetty; тип=osgi.bundle; версия="[3.0.4,3.0.4]"; разрешение: = обязательно [вызвано: невозможно разрешить org.apache.cxf.cxf-rt-transports-http-jetty/3.0.4: отсутствует требование [org.apache.cxf.cxf-rt-transports-http-jetty/ 3.0.4] osgi.wiring.package; filter:="(&(osgi.wiring.package=org.eclipse.jetty.continuation)(версия>=7.6.0)(!(версия>=8.2.0)))"]]

Если я посмотрю на имеющиеся там пакеты, я увижу пакет org.eclipse.jetty.continuation в моей системе, когда http установлен

2015-05-08 09:29:02,928 | ИНФО | пул-40-поток-1 | ОсобенностиСервисВнедрение | 6 — org.apache.karaf.features.core — 4.0.0.M2 | org.eclipse.jetty.continuation / 9.2.7.v20150116

Итак, это версия 9.2.7. Если я понимаю ошибку при установке cxf, ему нужна версия >= 7.6.0, а не >= 8.2.0.

Есть ли версия службы HTTP, которую я могу использовать с CXF? Я новичок в Karaf, поэтому не знаю, как указать более старую версию. Спасибо за любую помощь.


person EdH    schedule 07.05.2015    source источник
comment
Итак, вместо использования Karaf 4.0 я установил Karaf 3.0.3 и, выполнив те же действия, смог установить функцию cxf. Итак, возможно, реальный вопрос заключается в том, существует ли дорожная карта для cxf для поддержки karaf 4.0?   -  person EdH    schedule 08.05.2015


Ответы (2)


Да, это известная проблема. Не уверен, однако, если он известен людям Karaf и CXF. У меня тоже была проблема с Karaf 4.0.0, я даже не мог установить http cxf. Затем я вернулся к Karaf 3.0.3, и у меня все заработало. у меня тоже такая забота! Действительно ли проект/команда Apache Karaf рассматривает собственный Apache CXF? Ну я сомневаюсь!

person Puneet Pandey    schedule 03.06.2015
comment
К сведению: я скачал karaf 4.0.0.M3 и установил в него apache cxf 3.1.0, и он отлично работает. Итак, изменения в моей настройке... karaf 4.0.0 M3 (вместо M2) ​​и cxf 3.1.0 (вместо 3.0.4). Но я могу нормально разместить свои службы отдыха. - person EdH; 11.06.2015

Karaf 4.x поставляется с Jetty 9 (не 8). Итак, вам нужно обновить версию CXF (например, 3.11) или перейти на Karaf 3 (который предоставляет Jetty 8).

person chandresh    schedule 13.06.2016