我一直在努力解决我的问题,但我无法 u_u
好吧,走着瞧。我需要发送一封电子邮件(我可以这样做),但最后一个要求是我需要附加证书(SSL),这就是问题所在。这是我的代码:
// @param _smimePw keystore password = "techbrainwave"
// @param _alias keystore password = "certificatekey"
// get the S/MIME EncryptionUtilities
##EncryptionUtils smimeUtils = EncryptionManager.getEncryptionUtils(EncryptionManager.SMIME);##
// load the S/MIME keystore from the given file.
char[] smimePw = new String("techbrainwave").toCharArray();
EncryptionKeyManager smimeKeyMgr = smimeUtils.createKeyManager();
smimeKeyMgr.loadPrivateKeystore(new FileInputStream(new File("C:\\j2sdk1.4.2_18\\bin\\truststore.jks")), smimePw);
// get our keys.
java.security.Key smimeKey = smimeKeyMgr.getPrivateKey("certificatekey", smimePw);
msg.setContent(parts);
// write smime message.
MimeMessage smimeSignedMsg = smimeUtils.signMessage(mailSession, msg, smimeKey);
Transport tr = mailSession.getTransport("smtp");
tr.connect(SMTPServer, "", "");
smimeSignedMsg.saveChanges(); // don't forget this
tr.sendMessage(smimeSignedMsg, smimeSignedMsg.getAllRecipients());
tr.close();
标记的行是以下异常导致我的代码崩溃的地方:
java.security.NoSuchProviderException:在 net.suberic.crypto.EncryptionManager.getEncryptionUtils(EncryptionManager.java:99) 处没有为 S/MIME 配置提供程序
我从这个链接中举了一个例子:
http://blog.jservlet.com/post/2008/01/03/How-to-use-Javamail-Crypto-with-S/MIME-provider?pub=0#pr
我希望你能帮助我。我有两天时间遇到这个问题,我不知道问题出在哪里。我尝试做的是将 SSL 证书附加到我的邮件中,这是我的问题的简历。如果有其他方法可以解决它,我将不胜感激。
提前致谢。
问候。