0
我有一個駱駝的路線,看起來像這樣獲得空從bean中獲取數據,然後將其與來自seda:external
的數據進行比較。問題是當我從seda隊列中獲取數據時,我得到空值。這裏的單元測試:從SEDA隊列
public class Test{
@EndpointInject
ProducerTemplate producerTemplate;
@EndpointInject
ConsumerTemplate consumerTemplate;
@Autowired
BeanName beanName;
@Test
public void testName() throws Exception {
producerTemplate.sendBody("seda:internal","Good bye");
Thread.sleep(10000); //needs to sleep so that the bean gets executed before accessing
//beanName.message;
String message = beanName.message;
LOGGER.info("Printing" + message); //prints (Good bye)
String body = consumerTemplate.receiveBodyNoWait("seda:external", String.class);
LOGGER.info("Body is" + body); //prints null
}
任何理由隊列給null
?
你的意思是「其應有的併發」是什麼意思?另外,如果我使用receiveBody,它會卡住在consumerTemplate.receiveBody上,因爲隊列中沒有任何東西。同時,你的意思是說,當我使用receiveBodyNoWait時,我應該在代碼中使用sleep,而我已經在這樣做。 :) .. – bangbang