Используя Java Vaadin FrameWork
, я хочу связать столбец, выбранный из таблицы NewsAndEvents, со столбцом в таблице документов ниже. Поэтому, когда я выбираю один из столбцов в таблице выше, я хочу, чтобы появлялись столбцы с одинаковым ForeignKey. if (selectedItem != null)
Мне нужно создать еще один объект, если он находится внутри блока, и на этот раз мне нужно получить два объекта с одинаковым идентификатором. Я упомянул связь между сущностями ниже и методом valueChange таблицы с вами. Может ли раздел, в котором я комментирую работу?
NewsAndEvents Entity
@Transient
private Document document;
Document Entity
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="news_and_events_id" ,foreignKey = @ForeignKey(name="FK_docu_cpt_nae"))
private NewsAndEvents newsAndEvents;
@Column(name = "news_and_events_id", nullable=true,scale=0, precision=19, insertable = false, updatable = false)
private Long newsAndEventsFk;
Таблица значенийИзменить метод
table.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
NewsAndEvents selectedItem = (NewsAndEvents) event.getProperty().getValue();
if (selectedItem != null) {
//if(selectedItem.getDocument().getNewsAndEventsFk() == selectedItem.getId())
addNewDocumentButton.setEnabled(selectedItem != null);
deleteButton.setEnabled(selectedItem != null);
editButton.setEnabled(selectedItem != null);
} else {
deleteDocumentButton.setEnabled(selectedItem != null);
deleteButton.setEnabled(selectedItem != null);
editButton.setEnabled(selectedItem != null);
}
}
});