2010-04-20 5 views
2

я получаю следующее сообщение об ошибке при развертывании моего приложения с производителем и потребителем JMSПроблем создание JMS очереди на Glassfish

com.sun.enterprise.connectors.ConnectorRuntimeException: JMS resource not created : QueueName 

Я использовал аннотации ниже:

Producer

@Resource(name = "jms/EmailNotificationQueue", mappedName = "EmailNotificationQueue") 
private Destination destination; 

@Resource(name = "jms/QueueConnectionFactory") 
private ConnectionFactory connectionFactory; 

Затем я создаю соединение и запускаю его перед отправкой сообщения

Consumer

@MessageDriven(name = "EmailNotificationBean", activationConfig = {           
@ActivationConfigProperty(         
    propertyName="destinationType",       
    propertyValue="javax.jms.Queue"),      
@ActivationConfigProperty(         
    propertyName="destinationName",       
    propertyValue="EmailNotificationQueue"), 
@ActivationConfigProperty(
    propertyName="acknowledgeMode", 
    propertyValue="CLIENT_ACKNOWLEDGE") 

} 
,mappedName = "EmailNotificationQueue"                    
) 
+0

У вас есть файл glassfish-resources.xml в вашем пути к классу? когда я создал JMS в Netbeans, он автоматически добавил эти файлы, которые содержат конфигурацию jms. Он находится в разделе «Другие источники/настройки». Мне не нужно было вручную создавать Queue и QueueConnectionFactory – Damian

ответ

1

Вы вручную создали назначения?

Войдите в консоль администратора, разверните Ресурс, Ресурсы JMS, а затем Ресурсы назначения. Возможно, вам также понадобится создать фабрику соединений.

+0

, я мог бы создать очередь вручную, но спецификация не говорит о создании вручную. Другие серверы, безусловно, создадут очередь при развертывании. Я видел много людей с той же проблемой, но официальное решение об этом не похоже. – n002213f

Смежные вопросы