code: protected T createNewBean() throws InstantiationException {
          try {
              return beanClass.getConstructor().newInstance();
          } catch (final InstantiationException |
                   IllegalAccessException |
                   IllegalArgumentException |
                   InvocationTargetException |
                   NoSuchMethodException |
                   SecurityException e) {
              // fold it all into one type of exception
              throw new InstantiationException(e.getMessage());
          }
      }
docs: Creates a new bean.
  @return a new bean.
  @throws InstantiationException if anything goes wrong.