Я разбираю JSON и нахожусь в исключении, говоря, что у меня нет конструктора по умолчанию для одного из моих сущностей. Вот код:Публичный конструктор для вложенного класса
public class MyPromosResponse extends BaseResponse {
public MyPromosResponseData response;
public MyPromosResponse() {
}
public TreeSet<Promo> getMyPromosResponseData() {
return new TreeSet<Promo>(response.getEvents());
}
@JsonIgnoreProperties(ignoreUnknown = true)
class MyPromosResponseData {
public ArrayList<Promo> events;
public ArrayList<Table1PromoData> Table1;
public MyPromosResponseData() {
}
public ArrayList<Promo> getEvents() {
return events;
}
ArrayList<Table1PromoData> getTable1() {
return Table1;
}
}
class Table1PromoData {
public int id;
public int eventid;
public int cardholderid;
public Table1PromoData() { // Here is the constructor.
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getEventid() {
return eventid;
}
public void setEventid(int eventid) {
this.eventid = eventid;
}
public int getCardholderid() {
return cardholderid;
}
public void setCardholderid(int cardholderid) {
this.cardholderid = cardholderid;
}
}
}
Когда я Table1PromoData
как вложенный класс у меня есть ошибки конструктор по умолчанию не может быть найден, но есть общественный конструктор, определенный. Если я переведу его в отдельный файл, все в порядке - lib находит конструктор.
Почему конструктор по умолчанию становится видимым после того, как я переместил его в отдельный файл?
Сделайте свой вложенный класс ' static'. –
@ Сотириос, спасибо, он работает после того, как я установил его как статический. – Eugene
@silk Добро пожаловать, ответьте на вопрос Zim-Zam. –