title: UnsupportedOperationException when using KeyStore.getEntry()?
body: <p>I'm trying to retrieve entries from a Java KeyStore on Mac OSX 10.6.  My code runs fine on Windows and Linux, but when I run it on OSX I get the following Exception:</p>
  
  <pre><code>java.lang.UnsupportedOperationException
      at java.security.KeyStoreSpi.engineGetEntry(KeyStoreSpi.java:466)
      at java.security.KeyStore.getEntry(KeyStore.java:1261)
  </code></pre>
  
  <p>Here's my code:</p>
  
  <pre><code>String keyStorePath = ...
  PasswordProtection pp = new PasswordProtection("password".toCharArray());
  CallbackHandlerProtection chp = new CallbackHandlerProtection(
          new CallbackHandler() {
  
              @Override
              public void handle(Callback[] callbacks)
                      throws IOException, UnsupportedCallbackException {
                  for (int i = 0; i &lt; callbacks.length; i++) {
                      if (callbacks[i] instanceof PasswordCallback) {
                          PasswordCallback pc = (PasswordCallback) callbacks[i];
                          pc.setPassword("password".toCharArray());
                      }
                  }
              }
          });
  
  try {
      KeyStore.Builder kb = Builder.newInstance("JCEKS", null, new File(
              keyStorePath), chp);
      KeyStore ks = kb.getKeyStore();
  
      Enumeration&lt;String&gt; aliases = ks.aliases();
      while (aliases.hasMoreElements()) {
          String alias = aliases.nextElement();
          KeyStore.Entry entry = ks.getEntry(alias, chp);
  
      }
  } catch (Exception e) {
      e.printStackTrace();
  }
  </code></pre>
  
  <p>Any idea why this exception is being thrown on OSX?  Is it a bug in the JVM on this OS?  Anyone ever seen this before?</p>