Chce stworzyć service, który pobiera dane z innego servicu. Niestety zwraca mi cały czas null bez jakichkolwiek błędów.
Dto
@NoArgsConstructor
@AllArgsConstructor
@Getter
public class ApiDto {
@JsonProperty("Currecies")
private CurrencyDtos currencies;
}
@NoArgsConstructor
@AllArgsConstructor
@Getter
@JsonIgnoreProperties(ignoreUnknown = true)
public class CurrencyDtos {
@JsonProperty("PublicationDate")
private String publicationDate;
@JsonProperty("Items")
private List<CurrencyDto> currencies;
}
@AllArgsConstructor
@NoArgsConstructor
@Getter
public class CurrencyDto {
@JsonProperty("Name")
private String name;
@JsonProperty("Unit")
private String unit;
@JsonProperty("PurchasePrice")
private BigDecimal purchasePrice;
@JsonProperty("SellPrice")
private BigDecimal sellPrice;
@JsonProperty("AveragePrice")
private BigDecimal averagePrice;
}
Klient
@Component
public class ApiClient {
private final static Logger LOGGER = LoggerFactory.getLogger(ApiClient.class);
@Autowired
private RestTemplate restTemplate;
@Autowired
private AppConfig appConfig;
public ApiDto getCurrencies() {
List<ClientHttpRequestInterceptor> interceptors = new ArrayList<ClientHttpRequestInterceptor>();
interceptors.add(new HeaderRequestInterceptor("Accept", MediaType.APPLICATION_JSON_VALUE));
restTemplate.setInterceptors(interceptors);
return restTemplate.getForObject(appConfig.getNbpApiEndpoint(), ApiDto.class);
}
}
Kontroler
@RestController
public class ApiController {
private static final Logger LOGGER = LoggerFactory.getLogger(ApiController.class);
@Autowired
private ApiService apiService;
@RequestMapping(value = "/")
public ApiDto getCurrencies() {
return apiService.getCurrencies();
}
}[]
w załączniku jak wygląda json
logi :
2018-03-23 23:21:59.563 DEBUG 18856 --- [nio-8080-exec-2] o.s.web.client.RestTemplate : GET request for "http://xxxxxxxxxxxxxxxxxx:8068/currencies" resulted in 200 (OK)
2018-03-23 23:21:59.564 DEBUG 18856 --- [nio-8080-exec-2] o.s.web.client.RestTemplate : Reading [class com.e.kantor.dto.ApiDto] as "application/json;charset=utf-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@6dbfa5fa]
2018-03-23 23:21:59.569 DEBUG 18856 --- [nio-8080-exec-2] m.m.a.RequestResponseBodyMethodProcessor : Written [com.e.kantor.dto.ApiDto@32d967be] as "application/json" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@43af351a]
2018-03-23 23:21:59.569 DEBUG 18856 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet : Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2018-03-23 23:21:59.569 DEBUG 18856 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet : Successfully completed request
- SHU_P9G5om.png (57 KB) - ściągnięć: 79