Java RestClient抛出NullPointerException?
我得到了一个NullpointerException,但我甚至不明白这是怎么可能的。我只是从另一个类复制粘贴了RestTemplate RestTemplate=this.restClient.getRestTemplate(),但这里我得到了一个NullpointerExceptionJava RestClient抛出NullPointerException?,java,spring,rest,spring-mvc,Java,Spring,Rest,Spring Mvc,我得到了一个NullpointerException,但我甚至不明白这是怎么可能的。我只是从另一个类复制粘贴了RestTemplate RestTemplate=this.restClient.getRestTemplate(),但这里我得到了一个NullpointerException @Component public class ShowRestClient implements ShowService{ @Autowired private RestClient restClient;
@Component
public class ShowRestClient implements ShowService{
@Autowired
private RestClient restClient;
@Override
public List<ShowDto> getShowsByPerformanceID(int perfID)
throws ServiceException {
// TODO Auto-generated method stub
return null;
}
@Override
public List<ShowDto> findAllShows() throws ServiceException {
RestTemplate restTemplate = this.restClient.getRestTemplate();(!!!!! HERE)
String url = this.restClient.createServiceUrl("/show/");
HttpEntity<String> entity = new HttpEntity<String>(this.restClient.getHttpHeaders());
List<ShowDto> shows = null;
try {
ParameterizedTypeReference<List<ShowDto>> ref = new ParameterizedTypeReference<List<ShowDto>>() {};
ResponseEntity<List<ShowDto>> response = restTemplate.exchange(URI.create(url), HttpMethod.GET, entity, ref);
shows = response.getBody();
} catch (RestClientException e) {
throw new ServiceException("Could not retrieve shows: " + e.getMessage(), e);
}
return shows;
}
@组件
公共类ShowRestClient实现ShowService{
@自动连线
私人客户;
@凌驾
公共列表getShowsByPerformanceID(int perfID)
抛出ServiceException{
//TODO自动生成的方法存根
返回null;
}
@凌驾
public List findAllShows()引发ServiceException{
RestTemplate RestTemplate=this.restClient.getRestTemplate();(!!!!!!!此处)
字符串url=this.restClient.createServiceUrl(“/show/”);
HttpEntity=新的HttpEntity(this.restClient.getHttpHeaders());
列表显示=null;
试一试{
ParameteredTypeReference ref=新的ParameteredTypeReference(){};
ResponseEntity response=restemplate.exchange(URI.create(url)、HttpMethod.GET、entity、ref);
shows=response.getBody();
}捕获(RestClientException e){
抛出新的ServiceException(“无法检索显示:+e.getMessage(),e”);
}
回归演出;
}
您的RestClient似乎是空的
很可能是因为@Autowired
不工作。我怀疑您的组件不是真正的Spring Bean,因为如果是,那么您的上下文创建将在应用程序启动期间失败。请确保包扫描中包含该包。对不起,我是一个全新的组件bie在Rest中,你对包扫描中包含的包是什么意思?你能给我建议一些我可以尝试的步骤吗?@Akin:你遇到的是Spring配置问题,而不是Rest问题。请阅读Spring自动连线和类路径扫描。我检查了,但这完全是应该的。。。