@ Override public JmsQueueConnectionFactory createQueueConnectionFactory ( ) throws JMSException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( this , tc , "createQueueConnectionFactory" ) ; JmsQueueConnectionFactory jmsqcf = null ; // get a jca managed queue connection factory, which is used to construct // the jms queue connection factory. JmsJcaManagedQueueConnectionFactory jcamqcf = JmsJcaFactory . getInstance ( ) . createManagedQueueConnectionFactory ( ) ; // invoke the construction of a jms queue connection factory - the jca // managed queue connection factory will call back into the jms api code // by getting a JmsRAFactoryFactory, and calling a create jms queue // connection factory method on it with jca connection factory and jca // managed queue connection factory objects as parameters (the jms qcf // will keep references to the jca cf and jca mqcf). try { jmsqcf = ( JmsQueueConnectionFactory ) jcamqcf . createConnectionFactory ( ) ; } catch ( ResourceException re ) { // No FFDC code needed // d222942 review - no documentation for when a RE will be thrown, so // default exception ok. (A quick look at the RA suggests the exception isn't // ever thrown). // d238447 FFDC review. Comment above suggests an FFDC ok for this case. throw ( JMSException ) JmsErrorUtils . newThrowable ( JMSException . class , "EXCEPTION_RECEIVED_CWSIA0007" , new Object [ ] { re , "JmsFactoryFactoryImpl.createQueueConnectionFactory (#1)" } , re , "JmsFactoryFactoryImpl.createQueueConnectionFactory#1" , this , tc ) ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( this , tc , "createQueueConnectionFactory" , jmsqcf ) ; return jmsqcf ; }
This method is called by the application to retrieve its first QueueConnectionFactory object .