Datatable не сохраняет значения редактировать в других строках при добавлении новой строки - PullRequest
0 голосов
/ 25 января 2012

У меня проблема с тем, что значения таблиц данных не сохраняются при добавлении новых строк в таблицу данных. Нужно ли иметь мой bean-компонент в области запроса, чтобы можно было сохранить обновленные значения данных во время последующего добавления? В моем случае связанный список (с использованием атрибута value datatable) всегда пуст во время каждого действия добавления строки.

Bean:

public class Students {
  private StudentService service;

  @PostConstruct 
  public void init() {
    list = service.list();
  }

  public void add() {
    list.add(new Student()); 
  }

  public void save() {
    service.save(list); 
  } 
}

Форма:

<h:form> 
    <h:dataTable value="#{students.list}" var="student">
        <h:column><h:inputText value="#{student.name}" /></h:column>
    </h:dataTable> <h:commandButton value="Add" action="#{students.add}" /> 
    <h:commandButton value="Save" action="#{students.save}" />
</h:form>

1 Ответ

0 голосов
/ 25 января 2012

Если у вас есть bean-компонент request, один из способов заключается в том, чтобы valueChangeListener = "# {bean.ajaxCall}" в этом компоненте и иметь пустой метод ajaxCall в вашем bean-компоненте. Таким образом, значение сохраняется с помощью ajax-вызова в компоненте поддержки и сохранит обновление для таблицы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...