Я сделал вызов API, используя шаблон отдыха весны в качестве клиента отдыха.Когда метод, который создает API, возвращает строку, почтальон может видеть объект и свойства связанного объекта с его значениями.но когда я изменяю тип возвращаемого значения на объект, который моделирует возвращаемый объект API, я получаю все нулевые значения.я что-то не так делаю?
@GetMapping(value="/verbvn/{xbvn}")
public Participant verBVN(@PathVariable String xbvn) {
System.out.println("bvn is "+xbvn);
HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
headers.setBearerAuth("sk_live_32a7ffd9cc47f");
HttpEntity <String> entity = new HttpEntity<String>(headers);
Participant r= restTemplate.exchange("https://api.stck.co/bnk/resolve_bvn/"+xbvn, HttpMethod.GET, entity, new ParameterizedTypeReference<Participant>() {}).getBody();
System.out.println("the participant firstname is "+r.getFirstName());
return r;
}
public class Participant {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column
private Long id;
@OneToOne(cascade=CascadeType.ALL)
@JoinColumn(name="id",referencedColumnName="id")
private Data data;
public Participant() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Data getData() {
return data;
}
public void setData(Data data) {
this.data = data;
}
}
@Entity
@Table
@Async
@JsonIgnoreProperties(ignoreUnknown=true)
public class Data {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column
private Long id;
@Column
@JsonProperty(value="first_name")
private String firstName;
@Column
@JsonProperty(value="last_name")
private String lastName;
@Column
@JsonProperty(value="phone")
private String phoneNumber;
@Column
@JsonProperty(value="email")
private String email;
public Data() {}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}