if (Configuration.DEBUG)
  private void setupSigningParams() throws KeyStoreException, IOException,      NoSuchAlgorithmException, CertificateException,      UnsupportedCallbackException, UnrecoverableKeyException  {    log.entering(this.getClass().getName(), "setupSigningParams"); //$NON-NLS-1$    if (ksURL == null || ksURL.trim().length() == 0)      {        String userHome = SystemProperties.getProperty("user.home"); //$NON-NLS-1$        if (userHome == null || userHome.trim().length() == 0)          throw new SecurityException(Messages.getString("Main.85")); //$NON-NLS-1$        ksURL = "file:" + userHome.trim() + "/.keystore"; //$NON-NLS-1$ //$NON-NLS-2$      }    else      {        ksURL = ksURL.trim();        if (ksURL.indexOf(":") == -1) //$NON-NLS-1$          ksURL = "file:" + ksURL; //$NON-NLS-1$      }    if (ksType == null || ksType.trim().length() == 0)      ksType = KeyStore.getDefaultType();    else      ksType = ksType.trim();    store = KeyStore.getInstance(ksType);    if (ksPassword == null)      {        // ask the user to provide one        PasswordCallback pcb = new PasswordCallback(Messages.getString("Main.92"), //$NON-NLS-1$                                                    false);        getCallbackHandler().handle(new Callback[] { pcb });        ksPasswordChars = pcb.getPassword();      }    else      ksPasswordChars = ksPassword.toCharArray();    URL url = new URL(ksURL);    InputStream stream = url.openStream();    store.load(stream, ksPasswordChars);    if (! store.containsAlias(alias))      throw new SecurityException(Messages.getFormattedString("Main.6", alias)); //$NON-NLS-1$    if (! store.isKeyEntry(alias))      throw new SecurityException(Messages.getFormattedString("Main.95", alias)); //$NON-NLS-1$    Key key;    if (password == null)      {        passwordChars = ksPasswordChars;        try          {            key = store.getKey(alias, passwordChars);          }        catch (UnrecoverableKeyException x)          {            // ask the user to provide one            String prompt = Messages.getFormattedString("Main.97", alias); //$NON-NLS-1$            PasswordCallback pcb = new PasswordCallback(prompt, false);            getCallbackHandler().handle(new Callback[] { pcb });            passwordChars = pcb.getPassword();            // take 2            key = store.getKey(alias, passwordChars);          }      }    else      {        passwordChars = password.toCharArray();        key = store.getKey(alias, passwordChars);      }    if (! (key instanceof PrivateKey))      throw new SecurityException(Messages.getFormattedString("Main.99", alias)); //$NON-NLS-1$    signerPrivateKey = (PrivateKey) key;    signerCertificateChain = store.getCertificateChain(alias);    log.finest(String.valueOf(signerCertificateChain));    if (sigFileName == null)      sigFileName = alias;    sigFileName = sigFileName.toUpperCase(EN_US_LOCALE);    if (sigFileName.length() > 8)      sigFileName = sigFileName.substring(0, 8);    char[] chars = sigFileName.toCharArray();    for (int i = 0; i < chars.length; i++)      {        char c = chars[i];        if (! (Character.isLetter(c)            || Character.isDigit(c)            || c == '_'            || c == '-'))          chars[i] = '_';      }    sigFileName = new String(chars);    if (signedJarFileName == null)      signedJarFileName = jarFileName;    log.exiting(this.getClass().getName(), "setupSigningParams"); //$NON-NLS-1$  }