我正在尝试使用twitter4j库为我的java项目发送推文.在我第一次运行时,我收到了关于证书sun.security.validator.ValidatorException和错误的错误sun.security.provider.certpath.SunCertPathBuilderException.然后我添加了twitter证书:
C:\Program Files\Java\jdk1.7.0_45\jre\lib\security>keytool -importcert -trustcacerts -file PathToCert -alias ca_alias -keystore "C:\Program Files\Java\jdk1.7.0_45\jre\lib\security\cacerts"
Run Code Online (Sandbox Code Playgroud)
但没有成功.这是获得twitters的过程:
public static void main(String[] args) throws TwitterException {
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)
.setOAuthConsumerKey("myConsumerKey")
.setOAuthConsumerSecret("myConsumerSecret")
.setOAuthAccessToken("myAccessToken")
.setOAuthAccessTokenSecret("myAccessTokenSecret");
TwitterFactory tf = new TwitterFactory(cb.build());
Twitter twitter = tf.getInstance();
try {
Query query = new Query("iphone");
QueryResult result;
result = twitter.search(query);
System.out.println("Total amount of tweets: " + result.getTweets().size());
List<Status> tweets = result.getTweets();
for (Status tweet : tweets) {
System.out.println("@" + tweet.getUser().getScreenName() + " …Run Code Online (Sandbox Code Playgroud) 我使用apt-get install安装了JDK.我不知道我的jdk文件夹在哪里.我需要为此设置路径.有没有人知道这个位置?
我的 DBeaver 中有此消息 你能帮我解决这个问题吗?
Network error
Motif:
Network unavailable:
javax.net.ssl.SSLHandshakeException:PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Exchange服务器配置邮件.
这是我的配置
grails {
mail {
host = "mail.xxx.xx.xx"
port = 443
username = "username"
password = "password"
props = [ "mail.smtp.auth":"true",
"mail.smtp.port":"443",
"mail.smtp.ssl.enable" :"true"
]
}
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
Message: org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Exception reading response;
nested exception is:
java.net.SocketException: Connection reset. Failed messages: javax.mail.MessagingException: Exception reading response;
Run Code Online (Sandbox Code Playgroud)
我知道这是我必须更改道具的问题,因为此配置适用于我的邮件应用程序.我知道端口是正确的,它使用SSL.
我也尝试过使用这些道具
props = ["mail.smtp.timeout" : "100000",
"mail.smtp.starttls.enable" : "true",
"mail.smtp.EnableSSL.enable" : "true",
"mail.transport.protocol" : "smtps",
"mail.smtp.socketFactory.port" : "443",
"mail.smtp.auth" : "true",
"mail.smtp.socketFactory.class" : "javax.net.ssl.SSLSocketFactory",
"mail.smtp.socketFactory.fallback": …Run Code Online (Sandbox Code Playgroud) 我需要cacerts在我的一台服务器上添加受信任的证书。
我可以看到它$JAVA_HOME/jre/lib/security/从其他问题中消失了
但我还有第二个cacerts文件,两个位置是:
C:\Program Files\Java\jdk1.8.0_92\jre\lib\security
C:\Program Files\Java\jre1.8.0_92\lib\security
Run Code Online (Sandbox Code Playgroud)
到目前为止,我一直在将任何证书添加到两者中,这可能不正确。绝对是第一个选项,如果是,第二个选项有什么用?
有两个远程服务器存在。假设我们将它们命名为 A 和 B。我的 java 代码已提交并且在 GIT 存储库中是最新的。我在服务器 A 和 B 上提取了代码。当我在服务器 A 上使用 mvn clean package install 时,它工作正常并且构建成功完成。但是当我为服务器 B 使用 mvn clean package install 时,它给了我以下错误消息和构建失败消息。
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] oagi-srt ........................................... SUCCESS [ 0.292 s]
[INFO] oagi-srt-common .................................... SUCCESS [ 1.959 s]
[INFO] oagi-srt-repository ................................ SUCCESS [ 2.357 s]
[INFO] oagi-srt-service ................................... SUCCESS [ 2.064 s]
[INFO] oagi-srt-import .................................... SUCCESS [ 3.064 s]
[INFO] oagi-srt-webapp .................................... FAILURE [ 21.398 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] …Run Code Online (Sandbox Code Playgroud)