当我尝试将此代码添加到蓝图
时<cxfcore:bus>
<cxfcore:features>
<p:policies/>
<cxfcore:logging/>
</cxf:features>
</cxfcore:bus>
with namespace xmlns:cxfcore =&#34; http://cxf.apache.org/core"然后在日志中我可以看到:
18:26:59,058 | INFO | Thread-47 | BlueprintContainerImpl | 9 - org.apache.aries.blueprint.core - 1.0.1.redhat-610379 | Bundle sk.dcom.soa.doubleit is waiting for namespace handlers [http://cxf.apache.org/core]
18:26:59,060 | DEBUG | Thread-47 | doubleit | 351 - sk.dcom.soa.doubleit - 0.0.0.local-SNAPSHOT | BundleEvent STARTED - sk.dcom.soa.doubleit
但没有启动(没有cxf端点,如果没有定义cxfcore:bus
,那么两个端点正在监听)。
我可以看到已安装的功能:
[installed ] [2.7.0.redhat-610379 ] cxf cxf-2.7.0.redhat-610379
保险丝版本:
jboss-fuse-6.1.0.redhat-379
任何线索的家伙?感谢。
答案 0 :(得分:2)
首先需要在bundle中提供camel-blueprint依赖项,以便找到xml命名空间。然后,您需要使用正确的命名空间。正确的是xmlns:cxf="http://cxf.apache.org/blueprint/core"
一个例子是:
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:camel="http://camel.apache.org/schema/blueprint"
xmlns:jaxws="http://cxf.apache.org/blueprint/jaxws"
xmlns:cxf="http://cxf.apache.org/blueprint/core"
xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
xsi:schemaLocation="
http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://cxf.apache.org/blueprint/jaxws http://cxf.apache.org/schemas/blueprint/jaxws.xsd
http://cxf.apache.org/blueprint/core http://cxf.apache.org/schemas/blueprint/core.xsd
http://camel.apache.org/schema/blueprint http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
">