주입되지 않습니다 나는 이런 나의 봄 부팅 응용 프로그램에서 resttemplate를 만들었습니다. 그러나, 내 인터셉터에서이 nullpointer 예외를 throw합니다.봄 구름 Resttemplate이 요격
왜 내가 인터셉터에서로드 균형 조정 (리본 사용) resttemplate을 구성 할 수 있습니까?
업데이트 :
이내 인터셉터 :
public class MyInterceptor implements HandlerInterceptorAdapter {
@Autowired
RestTemplate restTemplate;
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler)
throws Exception {
HttpHeaders headers = new HttpHeaders();
...
HttpEntity<String> entity = new HttpEntity<String>(headers);
//restTemplate is null here
ResponseEntity<String> result =
restTemplate.exchange("<my micro service url using service name>",
HttpMethod.POST, entity, String.class);
...
return true;
}
인터셉터이 같은 봄 부팅 응용 프로그램에 추가됩니다
@Configuration
public class MyConfigAdapter extends WebMvcConfigurerAdapter {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new MyInterceptor()).addPathPatterns("/*");
}
}
당신의 인터셉터에 대한 자세한 내용을 제시해주십시오. 답변 할 정보가 충분하지 않습니다. – spencergibb
@spencergibb, 내 코드를 추가했습니다. 내 인터셉터에 새 RestTemplate (로드 균형이없는)을 만들고 서비스 이름 대신 "내 마이크로 서비스 URL 및 포트 번호"를 사용하면 제대로 작동하는지 확인할 수 있습니다. – Jayz