[ 
https://issues.apache.org/jira/browse/QPIDJMS-332?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robbie Gemmell updated QPIDJMS-332:
-----------------------------------
    Summary: enable defining destination names in tomcat resource definitions  
(was: Defining queue's name as tomcat resource conflichts resource definition)

> enable defining destination names in tomcat resource definitions
> ----------------------------------------------------------------
>
>                 Key: QPIDJMS-332
>                 URL: https://issues.apache.org/jira/browse/QPIDJMS-332
>             Project: Qpid JMS
>          Issue Type: Improvement
>          Components: qpid-jms-client
>    Affects Versions: 0.25.0
>            Reporter: Bernhard Seidl
>            Assignee: Robbie Gemmell
>             Fix For: 0.26.0
>
>
> Since a few days i am trying to define a queue resource in Tomcat's 
> context.xml. The attribute "name" defines the jndi name. Looking at 
> org.apache.qpid.jms.JmsDestination 
> the attribute is called "name", too. This seems to me as a  naming conflict. 
> I tried to use  the attribute "physicalName" due to the fact that some of the 
> classes are based on ActiveMQ. However I am not sure if I am missing a point 
> somewhere else:
> This is my setup:
> Context.xml
> {code:xml}
> <Resource name="jms/ConnectionFactory" auth="Container"
>               type="org.apache.qpid.jms.JmsConnectionFactory" 
> factory="org.apache.qpid.jms.jndi.JNDIReferenceFactory"
>               remoteURI="amqp://10.10.10.1:5672" username="a" password="a"
>               maxPoolSize="20" connectionTimeout="60000" />
>       <Resource name="jms/queue" auth="Container"
>               type="org.apache.qpid.jms.JmsQueue" 
> factory="org.apache.qpid.jms.jndi.JNDIReferenceFactory"
>               physicalName="name"/>
> {code}
> Init-code using spring:
> {code:java}
> @Configuration
> @EnableJms
> public class MessagingConfiguration {
>       @Bean
>       public ConnectionFactory connectionFactory() throws NamingException {
>               ConnectionFactory connectionFactory =  (new JndiTemplate())
>                               
> .lookup("java:/comp/env/jms/ConnectionFactory",ConnectionFactory.class);
>               return connectionFactory;
>       }
>       
>       @Bean
>       public DestinationResolver destinationResolver() {
>               JndiDestinationResolver jdr = new JndiDestinationResolver();
>               try {
>                       // testing
>                       Queue q = 
> jdr.getJndiTemplate().lookup("java:/comp/env/jms/queue", Queue.class);
>                       System.out.println("A: " + q.getQueueName());
>                       System.out.println("B: " + (new 
> JndiTemplate()).lookup("java:/comp/env/jms/queue", 
> Destination.class).getClass());
>               } catch (Exception e) {
>                       // TODO Auto-generated catch block
>                       e.printStackTrace();
>               }
>               return jdr; 
>       }
>       @Bean
>       public JmsTemplate jmsTemplate() throws NamingException {
>               JmsTemplate template = new JmsTemplate();
>               template.setConnectionFactory(connectionFactory());
>               template.setDestinationResolver(destinationResolver());
>               return template;
>       }
> }
> {code}
> Running the code prints out:
> {noformat}
> ...
> A:
> B: class org.apache.qpid.jms.JmsQueue
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to