在Karaf中添加activemq受信任包

在Karaf中添加activemq受信任包,activemq,apache-karaf,apache-servicemix,Activemq,Apache Karaf,Apache Servicemix,我正在尝试将我的包添加为受信任的,以便在activemq中进行(反)序列化 我使用的是Mongo3.0.1,所以BsonArray.parse(…)不是一个选项 我尝试了System.setProperty(“org.apache.activemq.SERIALIZABLE_PACKAGES”,“*”)但是这被忽略了。从中,在spring/camel中设置它将覆盖系统属性 如果设置了系统属性,则此配置将覆盖这些属性 将以下内容从同一链接复制粘贴到my blueprint.xml中会导致一系列“a

我正在尝试将我的包添加为受信任的,以便在activemq中进行(反)序列化

我使用的是Mongo3.0.1,所以
BsonArray.parse(…)
不是一个选项

我尝试了
System.setProperty(“org.apache.activemq.SERIALIZABLE_PACKAGES”,“*”)但是这被忽略了。从中,在spring/camel中设置它将覆盖系统属性

如果设置了系统属性,则此配置将覆盖这些属性

将以下内容从同一链接复制粘贴到my blueprint.xml中会导致一系列“amq broker”错误,需要从头开始重新安装所有内容以进行修复,我害怕再次尝试获取错误消息

<bean id="connectionFactory" class="org.apache.activemq.spring.ActiveMQConnectionFactory">
    <property name="brokerURL" value="tcp://localhost:61616"/>
    <property name="trustAllPackages" value="true"/>
</bean>
<bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
    <property name="connectionFactory" ref="connectionFactory"/>
</bean>
<bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
    <property name="configuration" ref="jmsConfig"/>
</bean>

那么,在Karaf/ServiceMix中,向activemq添加可信包的正确方法是什么


相关,但系统属性对我不起作用,我不知道ActiveMQ配置在卡拉夫的什么地方。

我解决了我的问题。原因
System.setProperty(“org.apache.activemq.SERIALIZABLE_PACKAGES”,“*”)不起作用,因为ActiveMQ在启动时只读取
org.apache.ActiveMQ.SERIALIZABLE_包
,并且ActiveMQ在Karaf中我的bundle之前启动


我不确定如何从我的activator重新启动ActiveMQ以强制它在运行时拾取更改,但您可以在
/etc/system.properties
中手动设置
org.apache.ActiveMQ.SERIALIZABLE_PACKAGES=*
。这将在ActiveMQ启动之前为您设置属性,以便ActiveMQ接收您的配置。请注意,更改system.properties文件后,您需要重新启动Karaf以使更改生效。

我认为servicemix etc目录中的某个地方有一个activemq.xml文件或具有activemq配置的文件。