Activemq代理未在Servicemix 5.3.0中启动



我创建了下面的activemq代理配置,并尝试在servicemix 5.3.0中安装。

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:broker="http://activemq.apache.org/schema/core"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
<broker:broker brokerName="myBroker1" dataDirectory="${karaf.data}/activemq/myBroker1"
useShutdownHook="false" startAsync="true">
<broker:destinations>
<broker:queue physicalName="SOME.QUEUE" />
</broker:destinations>
<!-- The transport connectors ActiveMQ will listen to -->
<broker:transportConnectors>
<broker:transportConnector name="openwire" uri="tcp://localhost:61617" />
<broker:transportConnector name="stomp" uri="stomp://localhost:61614" />
</broker:transportConnectors>
</broker:broker>
</beans>

我在servicemix 5.3.0日志中得到以下错误

2014-12-17 14:03:17959|错误|xtenderThread-13|ContextLoaderListener | 121-org.springframework.osgi.extender-1.2.1|应用程序上下文刷新失败(OsgiBundleXmlApplicationContext(bundle=com.att.ebiz.mq-broker-broker1,config=osgibundle:/META-INF/spring/*.xml))org.springframework.beans.factory.BeanDefinitionStoreException:无法识别的xbean命名空间映射:http://activemq.apache.org/schema/core在org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parseBeanFromExtensionElement(XBeanNamespaceHandler.java:284)[88:org.apache.xpean.spring:3.16.0]在org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parse(XBeanNamespaceHandler.java:156)[88:org.apache.xpean.spring:3.16.0]在org.apache.xbean.spring.context.v2.XBeanNamespaceHandler.parse(XBeanNamespaceHandler.java:49)[88:org.apache.xpean.spring:3.16.0]在org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1438)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1428)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReporter.java:195)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReporter.java:139)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReporter.java:108)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xmlXmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xmlXmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xmlXmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.xmlXmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReporter.java:174)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReporter.java:209)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReporter.java:180)[76:org.apache.servicemix.bundles.spring-beans:3.2.9.RELEASE_1]在org.springframework.osgi.context.support.OsgiBundleXmlApplicationContext.loadBeanDefinitions(OsgiBundleXmlApplicationContext.java:164)[120:org.springfframework.osgi.核心:1.2.1]在org.springframework.osgi.context.support.OsgiBundleXmlApplicationContext.loadBeanDefinitions(OsgiBundleXmlApplicationContext.java:136)[120:org.springfframework.osgi.核心:1.2.1]在org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshtableApplicationContext.java:130)[78:org.apache.servicemix.bundles.spring context:3.2.9.RELEASE_1]在org.springframework.context.support.AbstractApplicationContext.georgenFreshBeanFactory(AbstractApplicationContext.java:537)[78:org.apache.servicemix.bundles.spring context:3.2.9.RELEASE_1]在org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$800(AbstractDelegated ExecutionApplicationContext.java:69)[120:org.springfframework.osgi.core:11.2.1]在org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$3.run(AbstractDelegated ExecutionApplicationContext.java:269)[120:org.springfframework.osgi.核心:1.2.1]在org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)[120:org.springfframework.osgi.core:1.21]在org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.startRefresh(AbstractDelegated ExecutionApplicationContext.java:247)[120:org.springfframework.osgi.核心:1.2.1]在org.springframework.osgi.extender.internal.dependences.startup.DependencyWaiterApplicationContextExecutor.stageOne(DependencyWaiter ApplicationContextExecutior.java:214)[121:org.springfframework.osgi.extender:1.2]在org.springframework.osgi.extender.internal.dependences.startup.DependencyWaiterApplicationContextExecutior.refresh(DependencyWaiter ApplicationContextExecutiator.java:169)[121:org.springfframework.osgi.extender:1.2]在org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.refresh(AbstractDelegated ExecutionApplicationContext.java:175)[120:org.springfframework.osgi.核心:1.2.1]在org.springframework.osgi.extender.internal.activator.ContextLoaderListener$2.run(ContextLoaderListener.java:716)[121:org.springfframework.osgi.extender:1.2]在java.lang.Thread.run(Thread.java:745)[:1.7.0_71]

经纪人没有启动。请帮忙。谢谢

我找到了这个问题的解决方案,而不是专门针对错误的。我使用了蓝图,它运行良好。以下是代理配置的蓝图

<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0"
xmlns:broker="http://activemq.apache.org/schema/core">
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
<broker:broker brokerName="myBroker1"
dataDirectory="${karaf.data}/activemq/myBroker1" useShutdownHook="false"
startAsync="true">
<broker:destinations>
<broker:queue physicalName="SOME.QUEUE" />
</broker:destinations>
<broker:transportConnectors>
<broker:transportConnector name="openwire"
uri="tcp://localhost:61617" />
<broker:transportConnector name="stomp"
uri="stomp://localhost:61614" />
</broker:transportConnectors>
</broker:broker> </blueprint>

我们目前在ServiceMix 5.3.x和5.4.x中遇到一个问题,Karaf 2.4.x中缺少Spring Deployer(https://issues.apache.org/jira/browse/SM-2414)。

作为一种变通方法,您可以在ServiceMix 5.3.0 上手动安装它

osgi:install -s mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.spring/2.4.0

以及5.3.1和5.4.0:

osgi:install -s mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.spring/2.4.1

我希望它能有所帮助。

最新更新