等待命名空间处理程序

Waiting for namespace handlers

我正在升级到 Fuse 7.3 并在使用 CXF 的任何路由中遇到新错误。

  Blueprint bundle ruleEngineService/5.0.2 is waiting for namespace
  handlers [http://camel.apache.org/schema/blueprint]

根据所有文档,我的 blueprint.xml 包含正确的模式位置。例如。 link

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
xmlns:tx="http://aries.apache.org/xmlns/transactions/v1.2.0"
xmlns:camel="http://camel.apache.org/schema/blueprint"
xmlns:cxf="http://camel.apache.org/schema/blueprint/cxf"

xsi:schemaLocation="
http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> 

自从它在 Fuse 7.0.0 中工作以来,我没有做太多改变。

已安装功能:

  cxf                                      | 3.2.7.fuse-731004-redhat-00003  | x        | Started     | cxf-3.2.7.fuse-731004-redhat-00003            |

  camel-cxf                                | 2.21.0.fuse-731003-redhat-00003 | x        | Started     | camel-2.21.0.fuse-731003-redhat-00003         |

使此蓝图与正在解决的蓝图不同的是:

<cxf:cxfEndpoint id="myEndpoint" ...>

<bean id="myRoute" class="com.application.CxfCamelRoute" />

<camelContext xmlns="http://camel.apache.org/schema/blueprint" id="serviceRoutes">
    <routeBuilder ref="myRoute" />
</camelContext>

其中 CxfCamelRoute 包含对 cxf://bean:myEndpoint?serviceClass="..."

的引用

关于蓝图功能:

admin@root()> features:list | grep blueprint
kie-aries-blueprint                      | 7.11.0.Final                    |          | Uninstalled | karaf-features-core-droolsjbpm-7.11.0.Final   | KIE Aries Blueprint
camel-blueprint                          | 2.23.2.fuse-740006              |          | Uninstalled | camel-2.23.2.fuse-740006                      |
camel-blueprint                          | 2.21.0.fuse-731003-redhat-00003 | x        | Started     | camel-2.21.0.fuse-731003-redhat-00003         |
aries-blueprint-spring                   | 4.3.20.RELEASE_1                |          | Uninstalled | spring-legacy-4.2.0.fuse-731003-redhat-00003  |
aries-blueprint                          | 4.2.0.fuse-731003-redhat-00003  | x        | Started     | standard-4.2.0.fuse-731003-redhat-00003       | Aries Blueprint

会不会是aries-blueprint和camel-blueprint冲突了?

我运行没主意了。

好的,我好像解决了。

我在执行任何其他操作之前添加了 KIE (features:addurl mvn:org.kie/kie-karaf-features/7.11.0.Final/xml/features) 的存储库。订单更改解决了我的问题。好像 KIE 7.11.0.Final 添加了以下 repos:

mvn:org.apache.camel.karaf/apache-camel/RELEASE/xml/features
mvn:org.apache.cxf.karaf/apache-cxf/3.2.7.fuse-sb2-740011/xml/features

名称处理程序问题可能是由于 Fuse 7.3 库与最新的 camel/cxf RELEASE 版本之间存在冲突。

对我来说,让 KIE 7.11.0.Final 使用 RELEASE 功能感觉像是一个错误。这显然会带来不良后果。但是我不知道还有什么方法可以让我的 Karaf 访问 feature:install kie

切勿在 Maven 坐标中使用 RELEASE。当期待 Camel 2 时,您甚至可以使用 Camel 3。(也不要使用 LATEST)。

如果您使用 Fuse 安装 KIE 功能,您应该安装mvn:org.kie/kie-karaf-features/7.11.0.Final/xml/features

首先,您必须安装 bridge 功能,这些功能从 Fuse 为 KIE 提供功能依赖项:

karaf@root()> feature:repo-add mvn:org.jboss.fuse.features/rhba-features/7.6.0.fuse-760014/xml/features
Adding feature url mvn:org.jboss.fuse.features/rhba-features/7.6.0.fuse-760014/xml/features

然后你必须安装 Kie 特性的 Fuse 变体。不是 this one, but this one

kie-karaf-features-7.11.0.Final-features-fuse.xml中的描述比当前的 Fuse 稍旧,因为功能 artifactId 已更改:

   In order to install the below features into Fuse 7, target runtime needs to provide these features:
    - drools7-dependencies
    - jbpm7-dependencies
    - optaplanner-dependencies
    - kie7-remote-dependencies
    - db-dependencies
    - hibernate-dependencies
    - hibernate-validator-dependencies
   These features are contained in some repository not referenced explicitly with <repository> (loose coupling).
   Fuse 7 specific repository is 'mvn:org.jboss.fuse.features/brms-features/VERSION/xml/features'

命令如下:

karaf@root()> feature:repo-add mvn:org.kie/kie-karaf-features/7.11.0.Final/xml/features-fuse
Adding feature url mvn:org.kie/kie-karaf-features/7.11.0.Final/xml/features-fuse
karaf@root()> feature:list|grep kie
kie                                      │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-core-droolsjbpm-7.11.0.Final             │ KIE API
kie-ci                                   │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-core-droolsjbpm-7.11.0.Final             │ KIE CI
kie-spring                               │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-core-droolsjbpm-7.11.0.Final             │ KIE Spring
kie-aries-blueprint                      │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-core-droolsjbpm-7.11.0.Final             │ KIE Aries Blueprint
kie-camel                                │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-core-droolsjbpm-7.11.0.Final             │
kie-dmn                                  │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-fuse-droolsjbpm-7.11.0.Final             │ Kie DMN
kie-server-client                        │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-fuse-droolsjbpm-7.11.0.Final             │ KIE Server Client
servlet-api-kie                          │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-fuse-droolsjbpm-7.11.0.Final             │
kie-pmml                                 │ 7.11.0.Final                    │          │ Uninstalled │ karaf-features-fuse-droolsjbpm-7.11.0.Final             │
kie7-remote-dependencies                 │ 0.0.0                           │          │ Uninstalled │ fuse-features-dependencies-droolsjbpm-7.6.0.fuse-760014 │