javax.net.ssl.SSLKeyException : [보안 : 090477] 인증서 체인이 intranet.xxx.com - 158.171에서 수신되었습니다. SSL 핸드 셰이크 실패로 인해 160.28이 신뢰되지 않았습니다.javax.net.ssl.SSLKeyException : [보안 : 090477] intranet.xxx.com에서 인증서 체인 수신
weblogic을 사용하여 하나의 인트라넷 웹 사이트에서 html 페이지로 내용을 가져 오려고합니다. 웹 사이트에 연결하는 동안 javax.net.ssl.SSLKeyException이 발생합니다. [보안 : 090477] 예외입니다. 동일한 코드 조각을 사용하여 필수 클래스를 사용하여 필요한 부분을 얻을 수있었습니다. 이것에 대한 조언을 부탁드립니다.
public class Test{
public static void main(String[] args) {
String[] lines = null;
try {
// configure the SSLContext with a TrustManager
SSLContext ctx = null;
try {
ctx = SSLContext.getInstance("TLS");
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
ctx.init(new KeyManager[0], new TrustManager[] {new DefaultTrustManager()}, new SecureRandom());
} catch (KeyManagementException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SSLContext.setDefault(ctx);
String url = "https://www.google.com"
Document doc = Jsoup.connect(url).get();
Elements elements = doc.getElementById("table_UniqueReportID").children();
for(Element element : elements)
{
System.out.println(element.nodeName());
if(element.nodeName().equalsIgnoreCase("tbody"))
{
Elements rowElements = element.children();
for(Element currentRow : rowElements)
{
System.out.println(currentRow.text());
}
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private static class DefaultTrustManager implements X509TrustManager {
@Override
public X509Certificate[] getAcceptedIssuers() {
return null;
}
@Override
public void checkClientTrusted(X509Certificate[] arg0, String arg1)
throws CertificateException {
// TODO Auto-generated method stub
}
@Override
public void checkServerTrusted(X509Certificate[] arg0, String arg1)
throws CertificateException {
// TODO Auto-generated method stub
}
}
}