Получение java. net .ConnectException, но когда я реализую блок catch, IDE говорит, что никогда не выбрасывайте ConnectException из блока try - PullRequest
0 голосов
/ 23 января 2020

Это мой код

public ResponseEntity<String> xxxMethod(Notification notification, String communicationAPI) throws
        CustomException {
    ResponseEntity<String> responseEntity = null;
    try {
        HttpHeaders httpHeaders = new HttpHeaders();
        httpHeaders.add(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE);
        HttpEntity httpEntity = new HttpEntity(notification, httpHeaders);
        RestTemplate restTemplate = HTTPClientUtil.getRestTemplate();
        responseEntity = restTemplate.postForEntity(communicationAPI, httpEntity, String.class);
    } catch (KeyStoreException | NoSuchAlgorithmException | KeyManagementException e) {
        throw new CustomException(ErrorType.ERR_COMM_SERVICE);
    }
    return responseEntity;
}

ниже строки

responseEntity = restTemplate.postForEntity(communicationAPI, httpEntity, String.class);

получая следующее исключение

java.net.ConnectException: Connection refused: connect
                at java.net.DualStackPlainSocketImpl.connect0(Native Method) ~[na:1.8.0_161]
                at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) ~[na:1.8.0_161]
                at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_161]
org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:53) ~[spring-web-5.1.8.RELEASE.jar:5.1.8.RELEASE]
                at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:735) ~[spring-web-5.1.8.RELEASE.jar:5.1.8.RELEASE]
                at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:670) ~[spring-web-5.1.8.RELEASE.jar:5.1.8.RELEASE]
                at org.springframework.web.client.RestTemplate.postForEntity(RestTemplate.java:445) ~[spring-web-5.1.8.RELEASE.jar:5.1.8.RELEASE]
                at com.development.co.management.client.RestBridge.xxxMethod(RestBridge.java:60) ~[classes/:na]
                at com.development.co.management.client.RestBridge$$FastClassBySpringCGLIB$$9335ad64.invoke(<generated>) ~[classes/:na]
                at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.1.8.RELEASE.jar:5.1.8.RELEASE]
                at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:749) ~[spring-aop-5.1.8.RELEASE.jar:5.1.8.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.1.8.RELEASE.jar:5.1.8.RELEASE]

                at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:93)
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)

        com.development.co.management.controller.TroubleTicketController.createTicket(TroubleTicketController.java:68)
                at com.development.co.management.controller.TroubleTicketController$$FastClassBySpringCGLIB$$5e1efd29.invoke(<generated>)
                at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
                at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:749)
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
                at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:88)
                at com.development.co.commons.aop.logging.LoginAspect.log(LoginAspect.java:104)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method
                at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
                at java.lang.Thread.run(Thread.java:748)
            Caused by: java.net.ConnectException: Connection refused: connect
                at java.net.DualStackPlainSocketImpl.connect0(Native Method)

Но когда я обрабатываю исключение в catch, это показывает, что это никогда не вызовет ConnectException. Может ли кто-нибудь помочь в этом, пожалуйста

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...