我已经将MySQL 5.5.32安装apt-get install到Ubuntu 13.04中.我想在Java项目中使用它.为此我必须有MySql连接器jar.I找不到locate *mysql*.jar它.我试过但它没有找到任何东西.我看了/etc/mysql但是它里面没有罐子.我不想从互联网上下载,因为我相信它以某种方式存在于MySQL文件夹中.是否有人知道连接器jar进入Ubuntu 13.04的位置?
我正在运行一个Web应用程序Tomcat.我的应用程序使用Web服务(通过智能卡)签名并发送电子邮件.Web服务本身会sunpkcs#11在第一次调用期间和发送电子邮件之前自动添加提供程序,然后如果未删除和插入智能卡,则可以登录并发送电子邮件.如果删除并插入,为了发送电子邮件,我必须重新启动tomcat服务器,否则它会产生一些错误,具体取决于我的代码:
result= api.signAndSend(to, cc, bcc, subject, content, smartCardPin);
Run Code Online (Sandbox Code Playgroud)
删除并插入智能卡后,此代码提供以下异常消息:
令牌已被删除
这些是我的尝试:
sunpkcs#11在发送电子邮件并创建新sunpkcs#11提供程序并添加它之后删除提供程序.它给出了错误,如:java.security.InvalidKeyException:没有安装的提供程序支持此密钥:sun.security.pkcs11.P11Key $ P11PrivateKey或java.security.InvalidKeyException:没有安装的提供程序支持此密钥:null
而是:
result= api.signAndSend(to, cc, bcc, subject, content, smartCardPin);
SunPKCS11 sunPKCS11=(SunPKCS11)getLastProvider();
sunPKCS11.logout();
sunPKCS11.setCallbackHandler(new MyCallbackHandler());
KeyStore.CallbackHandlerProtection cpprotection = new KeyStore.CallbackHandlerProtection(
new MyCallbackHandler());
KeyStore.Builder builder = KeyStore.Builder.newInstance(
"PKCS11", sunPKCS11, cpprotection);
KeyStore ks = builder.getKeyStore();
//finalize PKCS#11
Field moduleMapField = PKCS11.class.getDeclaredField("moduleMap");
moduleMapField.setAccessible(true);
Map<?, ?> moduleMap = (Map<?, ?>) moduleMapField.get(null);
moduleMap.clear(); // force re-execution of C_Initialize next …Run Code Online (Sandbox Code Playgroud)