Я пытаюсь преобразовать JSON в Java-объект.Поскольку в json есть одинаковые поля, он выдает ошибку, подобную этой.
com.fasterxml.jackson.databind.JsonMappingException: Conflicting setter definitions for property "amount":
com.gateway.model.Order#setAmount(1 params) vs com.gateway.model.Order#setAmount(1 params)
Это json (часть, связанная с моей проблемой)
"order":{
"amount":1.000,
"chargeback":{
"amount":0,
"currency":"BHD"
},
}
Это соответствующая частькласса java.
public class Order
{
private double amount;
Chargeback ChargebackObject;
// Getter Methods
public double getAmount()
{
return amount;
// Setter Methods
public void setAmount(double amount)
{
this.amount = amount;
}
}
class Chargeback
{
private double amount;
private String currency;
// Getter Methods
@JsonIgnore
public double getAmount()
{
return amount;
}
@JsonInclude(Include.NON_NULL)
public String getCurrency()
{
return currency;
}
// Setter Methods
public void setAmount(double cb_amount)
{
this.amount = cb_amount;
}
public void setCurrency(String currency)
{
this.currency = currency;
}
}
Обратите внимание, что класс Chargeback находится в файле Order.java.
Я пробовал аннотацию @JsonIgnore
и удаление amount
в chargeback
класс, но все же ошибка существует.Может ли кто-нибудь предложить решение для этого?