title: Client Authentication Tomcat - trustAnchors parameter must be non-empty
body: <p>I know this question appears no stackoverflow a lot, and the exception is to do with a missing truststore - but here is my issue:</p>
  
  <ol>
  <li>Using Apache Tomcat v7.0.56 as server on Windows with Java 8.0.71</li>
  <li>modified tomcat/conf/server.xml to include SSL Connector with truststoreType="PKCS12", truststoreFile="conf/regtomcat.truststore" truststorePass="password" </li>
  </ol>
  
  <p>I launch tomcat and I know it is reading this truststore file correctly as I originally did not have the file in pkcs12 format and tomcat reported an error on startup.  I also have tried breaking the file location just to see tomcat startup fail as it can not find the file.  So tomcat launches okay - it is reading the truststore which must mean it exists and can be read.</p>
  
  <p>I load a p12 file into my browser certificate, and go to my application URL.  I then get the tomcat error:</p>
  
  <pre><code>handling exception: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: 
  the trustAnchors parameter must be non-empty
  </code></pre>
  
  <p>Given that my trustore exists, and contains my certificate - what could the problem be?</p>
  
  <p>I generated all certificates and truststores using keytool.  The truststore was created using the command</p>
  
  <pre><code>keytool -importcert -alias regClient -storetype PKCS12 -keystore regtomcat.truststore -file regClient.cer
  </code></pre>