2016-04-26 2 views
0

ActiveMQのバージョン変更(5.9.0 r4からr4への変更)の後に、http://activemq.apache.org/objectmessage.htmlと書かれているように、ActiveMQのシリアライズ可能なObjectMessageを明示的にマークする必要があります。推奨環境変数(-Dorg.apache.activemq.SERIALIZABLE_PACKAGES="*")を設定することはうまくいきますが、これは私たちの場合には優雅な解決策ではありません。 Scalaのソースから設定する必要があります。現在の接続はこのような何かを設定されていますActiveMQ ObjectmessageをScalaからシリアライズ可能に設定する

val properties = new java.util.Properties() 
properties.setProperty(javax.naming.context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory") 
properties.setProperty(javax.naming.context.PROVIDER_URL, "tcp://localhost:61616") 
val context = new InitialContext(properties) 
val topicConnection = context.lookup("ConnectionFactory").asInstanceOf[TopicConnectionFactory].createTopicConnection 

私は私が提案しfactory.setTrustAllPackages(true)を挿入することができポイントを見つけることができません。誰でも、私たちの場合にこれを行う方法や、Scalaから環境変数org.apache.activemq.SERIALIZABLE_PACKAGESを設定する方法を教えてもらえますか?ありがとうございました!

答えて

0

私は、次のコードの静的行を追加し、それが動作します:

System.setProperty("org.apache.activemq.SERIALIZABLE_PACKAGES", """*""") 
関連する問題