2011-03-22 66 views
0

我得在resource.groovy定義如下變化ActiveMQConnectionFactory brokerURL在Grails運行時的

beans = { 
    jmsConnectionFactory(org.apache.activemq.pool.PooledConnectionFactory) {bean -> 
     connectionFactory = {org.apache.activemq.ActiveMQConnectionFactory cf -> 
      brokerURL = brokerDestination 
     } 
    } 
} 

現在豆,有沒有辦法來動態改變brokerURL在運行,因此也重啓ActiveMQ的連接?

回答

2

更簡單的解決方案是爲每個代理和相應的bean目標定義多個連接工廠。然後,您可以根據您的要求在代碼中有條件地交換目標 - 一旦bean已經初始化,就沒有簡單的方法返回並修改bean定義。