我一直在学习EJB,我发现的最大问题之一是我的注释有时不起作用。例如,我有一个@Entity
:
@EJB(beanName="EventTriggerQueue") TriggerQueueAbst evq;
使用:
@Local
public interface TriggerQueueAbst {
public void queue(Object obj, Map<String, String> outputs);
}
和
@Stateless
public class EventTriggerQueue implements Serializable, TriggerQueueAbst {
private static final long serialVersionUID = 5038081840391929418L;
// JMS Queue declaration
@Resource(mappedName="jms/MyFactory")
private ConnectionFactory connectionFactory;
@Resource(mappedName="jms/EventTriggerQueue")
private Queue etQueue;
@Override
public void queue(Object evpObj, Map<String, String> outputs) {
//....
}
}
然而,当我设置断点时:
evq.queue(obj, outputs);
evq
只是null
,而不是代理。是否可以启用更详细的日志记录信息,以显示忽略或跳过@EJB
的原因?