docs: public static Throwable getJMS2Exception(JMSException jmse, Class exceptionToBeThrown) {
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "getJMS2Exceptions",
                          new Object[] { jmse, exceptionToBeThrown });
  
          JMSRuntimeException jmsre = null;
          try {
              jmsre = (JMSRuntimeException) exceptionToBeThrown.getConstructor(new Class[] { String.class, String.class, Throwable.class }).
                              newInstance(new Object[] { jmse.getMessage(), jmse.getErrorCode(), jmse.getLinkedException() });
          } catch (Exception e) {
  
              RuntimeException re = new RuntimeException("JmsErrorUtils.newThrowable#5", e);
              re.initCause(jmse);
              FFDCFilter.processException(re, "JmsErrorUtils.newThrowable", "JmsErrorUtils.newThrowable#5");
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, "exception : ", re);
              throw re;
          } finally {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "getJMS2Exceptions", jmsre);
          }
  
          return jmsre;
  
      }