У меня есть небольшой вопрос относительно представить форм в JSF 2:JSF2 DataBinding Проблема
В моем веб-приложение я получил функцию, которая обновляет объекты в моей дб. Эта функция получает относительные данные из управляемого компонента.
Итак, моя проблема заключается в том, что изменения в моем представлении не передаются в managedBean. Для этого вам будет показан пример:
public String updateProject() {
projectService.updateProject(projectData.getProjectDTO());
return ("overview.xhtml");
}
prjectData - мой ManagedBean. Это не работает! Обновлений не было.
public String deleteProject() {
projectData.getProjectDTO().setDeleted(true);
projectService.updateProject(projectData.getProjectDTO());
return ("overview.xhtml");
}
Здесь, когда я меняю значение по коду, он работает! Поэтому я думаю, что мои ценности из представления не переданы моему управляемому банку.
Где могла быть ошибка? Может быть, действие, которое я должен вызвать, чтобы данные передавали мой взгляд на managedBean?
Ответ на комментарий Габора:
Моя страница выглядит как:
<h:form>
<h:commandLink action="#{controller.updateProject}" value="Edit" />
<h:outputLabel for="title" value="Titel" />
<h:inputText id="title" value="#{projectData.projectDTO.title}" />
</h:form>
Если изменить название здесь и нажмите обновления ничего не происходит ;-)
Мой контроллер выглядит так:
По неизвестной причине мой режим отладки в eclipse больше не работает, он все время игнорирует мои точки останова. Я собираюсь исправить это, а затем проверю экземпляры. Sry -.-
Как выглядит ваша страница JSF? Что следует назвать этими функциями? – egbokul
Можете ли вы открыть свой код для свойства projectData и свойства projectDTO, как вы его определили. –
Вы попробовали отладить его, чтобы узнать, передаются ли данные управляемому компоненту? И проверить, является ли это одним и тем же экземпляром? (См. Ответ BalusC). – amorfis