【发布时间】:2013-04-08 15:40:05
【问题描述】:
当使用消息驱动 BEans 时,接收消息的目标名称被硬编码在注解 @MessageDriven(mappedName = "someDestinationName")
有没有办法在运行时添加这些信息? Bellow 是一个示例消息驱动 Bean 类。
package mdb.beans;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.Message;
import javax.jms.MessageListener;
@MessageDriven(mappedName = "someDestinationName", activationConfig =
{
@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"),
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue")
})
public class MDBSample implements MessageListener
{
public MDBSample()
{
// constructor
}
@Override
public void onMessage(Message message)
{
// logic when message received
}
}
【问题讨论】:
标签: java jakarta-ee annotations ejb-3.0 message-driven-bean