Security ActiveMQ发送对象消息
我正在使用ActiveMQ在当前项目中实现消息传递系统。我需要发送和接收Java对象,而不是简单的文本或二进制消息。Java对象(MyMessage对象)根据需要实现可序列化接口 ActiveMQ的最新版本增加了一些安全性,我需要将允许的包设置为的属性,但我还没有设法使其工作。我不确定需要在哪里添加该属性 错误消息: 不允许序列化此类。添加具有“org.apache.activemq.SERIALIZABLE_PACKAGES”系统属性的包Security ActiveMQ发送对象消息,security,activemq,Security,Activemq,我正在使用ActiveMQ在当前项目中实现消息传递系统。我需要发送和接收Java对象,而不是简单的文本或二进制消息。Java对象(MyMessage对象)根据需要实现可序列化接口 ActiveMQ的最新版本增加了一些安全性,我需要将允许的包设置为的属性,但我还没有设法使其工作。我不确定需要在哪里添加该属性 错误消息: 不允许序列化此类。添加具有“org.apache.activemq.SERIALIZABLE_PACKAGES”系统属性的包 您需要在运行jar时在环境变量中传递受信任的包,或者可
您需要在运行jar时在环境变量中传递受信任的包,或者可以通过添加以下代码行以编程方式完成此操作:
System.setProperty("org.apache.activemq.SERIALIZABLE_PACKAGES","*");
我希望这将有助于在ActiveMQ配置中添加connectionFactory.setTrustedPackages(Arrays.asList(“java.lang”,“您的packagename”);
您是如何配置系统属性的?您是否尝试运行bin/activemq.bat-Dorg.apache.activemq.SERIALIZABLE_PACKAGES=“*”?原因:java.lang.ClassNotFoundException:禁止类java.util.ArrayList!不信任将此类序列化为ObjectMessage负载。