У меня есть возможная ошибка с Vaadin8 Grid - она вообще не отображает никаких данных и не выводит никаких ошибок.Он не будет отображать никаких данных, когда я введу в него List <> через setData
. Вот код для пользовательского интерфейса: @Theme ("mytheme") открытый класс MyUI расширяет пользовательский интерфейс {
private BankeriClient bankeriClient = new BankeriClient();
@Override
protected void init(VaadinRequest vaadinRequest) {
final VerticalLayout layout = new VerticalLayout();
final HorizontalLayout buttonLayout = new HorizontalLayout();
final TextField nameField = new TextField();
final TextField surnameField = new TextField();
final DateField dateField = new DateField();
final TextField addressField = new TextField();
final TextField dollarsField = new TextField();
Response response = bankeriClient.findAll_JSON(Response.class);
List<Bankeri> listBankeri = response.readEntity(new GenericType<List<Bankeri>>() {});
Grid<Bankeri> grid = new Grid<>(Bankeri.class);
grid.addColumn(Bankeri::getJmeno).setCaption("First name").setEditorComponent(
nameField,
Bankeri::setJmeno
);
grid.addColumn(Bankeri::getPrijmeni).setCaption("Surname").setEditorComponent(
surnameField,
Bankeri::setPrijmeni
);
grid.addColumn(Bankeri::getLocalDatum_narozeni).setCaption("Date of birth").setEditorComponent(
dateField,
Bankeri::setLocalDatum_narozeni
);
grid.addColumn(Bankeri::getAdresa).setCaption("Address").setEditorComponent(
addressField,
Bankeri::setAdresa
);
grid.addColumn(Bankeri::getStringPenize).setCaption("Dollars").setEditorComponent(
dollarsField,
Bankeri::setStringPenize
);
grid.setData(listBankeri);
grid.getEditor().setEnabled(true);
grid.getEditor().setSaveCaption("Save");
grid.getEditor().setCancelCaption("Cancel");
final Button addBanker = new Button();
addBanker.setCaption("Přidej bankéře");
addBanker.addClickListener(e -> {
Bankeri toAdd = new Bankeri();
listBankeri.add(toAdd);
grid.getDataProvider().refreshAll();
});
final Button saveBanker = new Button();
saveBanker.setCaption("Ulož data bankéřů");
saveBanker.addClickListener(e -> {
for(Bankeri banker : listBankeri) {
bankeriClient.create_JSON(banker);
}
});
buttonLayout.addComponents(addBanker, saveBanker);
layout.addComponents(grid, buttonLayout);
setContent(layout);
}
@WebServlet(urlPatterns = "/*", name = "MyUIServlet", asyncSupported = true)
@VaadinServletConfiguration(ui = MyUI.class, productionMode = false)
public static class MyUIServlet extends VaadinServlet {
}
}
Что касается объекта, который я пытаюсь отобразить: я использую класс сущности: GlassFish 4.1.0, netbeans.Большое спасибо за любую помощь!
С уважением, Ян