Отправьте значение ячейки кнопкой строки в p: datatable - PullRequest
0 голосов
/ 19 мая 2019

У меня есть PrimeFaces p: dataTable с большим количеством столбцов, включая простой ввод числа и 1 кнопку обновления, и я хочу обновить определенную строку с добавленным значением.

<p:dataTable var="book" value="#{bookController.books}">
    <p:column headerText="Id">
        <h:outputText value="#{book.id}" />
    </p:column>

    <p:column headerText="Quantity">
        <h:outputText value="#{book.quantity}" />
    </p:column>

    <p:column headerText="Wanted Quantity">
        <p:spinner value="#{bookController.quantities[book.id]}" max="#{book.quantity}"
                size="10" min="0" />
    </p:column>

    <p:column headerText="Add to Cart">
        <p:commandButton action="#{bookController.buy(book.id)}" value="add"/>
    </p:column>

</p:dataTable>

и компонентis:

public class BookController {

    private Map<Integer, Integer> quantities = new HashMap<>();

    public void buy(Integer bookId) {
        System.out.println(quantities.get(bookId)); //quantities is empty
    }


    public Map<Integer, Integer> getQuantities() {
        return quantities;
    }

    public void setQuantities(Map<Integer, Integer> quantities) {
        this.quantities = quantities;
    }
}

Я попытался отправить само значение и привязать его к карте безуспешно.

Что еще я могу сделать, чтобы получить значение ячейкиконкретный ряд?

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