code: @Override
      protected Object openConnection() throws ConnectionException {
          qConnection = null;
          qSession = null;
          queue = null;
          try {
              String server_url = this.getAttributeValueSmart(SERVER_URL);
              if ("THIS_SERVER".equals(server_url)) server_url = null;
              String queue_name = this.getQueueName();
              JMSServices jmsServices = JMSServices.getInstance();
              QueueConnectionFactory qFactory = jmsServices.getQueueConnectionFactory(server_url);
              qConnection = qFactory.createQueueConnection();
              qSession = qConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
              qConnection.start();
              queue = jmsServices.getQueue(qSession, queue_name);
          } catch (Exception e) {
              logger.severeException("Exception in JmsAdapter.openConnection()" , e);
              throw new ConnectionException(ConnectionException.CONNECTION_DOWN, "Exception in invoking JmsAdapter" , e);
  
          }
          return qSession;
      }
docs: The method overrides the one in the super class to perform
  JMS specific functions.