InvalidKeySpecException y = new InvalidKeySpecException(); y.initCause(y); throw y;
throw new InvalidKeySpecException(x.getMessage(), x);
  private static Object invokeConstructor(String className, Object[] params)      throws InvalidKeySpecException  {    Class clazz = getConcreteClass(className);    try      {        Constructor ctor = getConcreteCtor(clazz);        Object result = ctor.newInstance(params);        return result;      }    catch (InstantiationException x)      {        InvalidKeySpecException y = new InvalidKeySpecException();        y.initCause(x);        throw y;      }    catch (IllegalAccessException x)      {        InvalidKeySpecException y = new InvalidKeySpecException();        y.initCause(y);        throw y;      }    catch (InvocationTargetException x)      {        InvalidKeySpecException y = new InvalidKeySpecException();        y.initCause(x);        throw y;      }  }