To Instantiate and Configure a Connection Factory

Instantiate the connection factory object.

The name ConnectionFactory is defined both as a JMS
interface (in package javax.jms) and as a Message Queue class (in com.sun.messaging) that implements that interface.
Since only a class can be instantiated, you must use the constructor defined
in com.sun.messaging to create your connection factory
object. Note, however, that you cannot import the name from both packages
without causing a compilation error. Hence, if you have imported the entire
package javax.jms.*, you must qualify the constructor with
the full package name when instantiating the object:

Notice that the type declaration for the variable myFactory,
to which the instantiated connection factory is assigned, is also qualified
with the full package name. This is because the setProperty method, used in Instantiating a Connection Factory, belongs to the ConnectionFactory class defined in the package com.sun.messaging, rather than to the ConnectionFactory interface
defined in javax.jms . Thus in order for the compiler to
recognize this method, myFactory must be typed explicitly
as com.sun.messaging.ConnectionFactory rather than simply ConnectionFactory (which would resolve to javax.jms.ConnectionFactory after importing javax.jms.* ).

Set the connection factory’s configuration properties.

The most important configuration
property is imqAddressList, which specifies the host names
and port numbers of the message brokers to which the factory creates connections.
By default, the factory returned by the ConnectionFactory constructor
in Instantiating a Connection Factory is
configured to create connections to a broker on host localhost at
port number 7676. If necessary, you can use the setProperty method, described in the preceding
section, to change that setting: