Я хотел бы знать, какова ожидаемая область действия javax.jms.Queue
в управляемом контексте java EE.
Является ли хорошей практикой хранить ссылки на экземпляры Queue
локально или я должен разрешать их каждый раз, когда отправляю сообщение.
Я полагаю, что сохранение ссылки лучше, чем множественный поиск jndi, поскольку вы часто видите такой код в bean-компонентах без сохранения состояния:
@Resource(lookup = "jms/QueueName")
private Queue queue;
Во всяком случае, в настоящее время у меня возникают проблемы (XA operation failed Cannot start, session is already doing work in a transaction XidImpl
) с использованием кэшированных экземпляров Queue
, разрешенных с помощью javax.jms.Session#createQueue("queueName")
.
Это приводит меня к другому вопросу: есть ли разница между разрешением очереди с помощью поиска jndi или с использованием Session#createQueue("queueName")
;
jms/QueueName
? - person Steve C   schedule 30.01.2018