【发布时间】:2015-11-10 03:52:27
【问题描述】:
我正在尝试使用我的用户名和密码从 jira 服务器获取问题详细信息,但我收到一个 ssl 错误,提示无法验证证书
那么如何验证证书
网址:http:local/8080/frr/hello
得到错误:
嵌套异常是 org.springframework.web.client.ResourceAccessException:I/O 错误 获取
的请求“https://jira.example.com/rest/api/2/issue/id”:
sun.security.validator.ValidatorException:PKIX 路径构建失败: sun.security.provider.certpath.SunCertPathBuilderException:无法 找到请求目标的有效认证路径;嵌套异常是 javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:PKIX 路径构建失败: sun.security.provider.certpath.SunCertPathBuilderException:无法 找到请求目标的有效认证路径] 根本原因 sun.security.provider.certpath.SunCertPathBuilderException:无法 找到请求目标的有效认证路径
我的 Service.class 代码
@Controller
public class Service{
@RequestMapping("/hello")
public String Data(ModelMap model){
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> result = restTemplate.exchange("https://jira.example.com/rest/api/2/issue/id", HttpMethod.GET, new HttpEntity<String>(createHeaders("username", "password")), String.class);
model.addAttribute("message", result);
return "helloworld";
}
RestTemplate restTemplate = new RestTemplate();
HttpHeaders createHeaders( String username, String password ){
HttpHeaders header = new HttpHeaders();
String auth = username + ":" + password;
byte[] encodedAuth = Base64.encodeBase64(auth.getBytes(Charset.forName("US-ASCII")) );
String base64Creds = "Basic " + new String( encodedAuth );
header.add("Authorization", "Basic " + base64Creds);
return header;
}
}
【问题讨论】:
标签: java spring validation spring-mvc ssl