commandButton/action во вложенном интерфейсе: повтор не работает

У меня есть некоторые проблемы с моей страницей JSF, которая отображает список пиццы. Я просматриваю каждую запись моего ArrayList, которая содержит данные о пицце с помощью цикла ui: repeat. Для каждой пиццы пользователь может выбрать размер и количество, прежде чем пользователь сможет добавить пиццу в корзину, нажав на кнопку. Это где ошибка происходит. При нажатии на кнопку страница JSF обновляется, и ничего не происходит. На моей консоли нет вывода

Фрагмент кода JSF-страницы:

<ui:repeat var="result" value="#{pizzaSearchBean.resultList}">
<h:form>
   <ul>
      <li><p>Name: #{result.pizza.name}</p></li>
      <li><p>ID: #{result.pizza.pizzaID}</p></li>
      <li>
         <p>Toppings:</p>
         <ui:repeat var="topping" value="#{result.toppingList}">
            <p>#{topping.toppingName}</p>
         </ui:repeat>
      </li>
      <li>
         <p>Sizes:</p>
         <h:selectOneRadio id="pizzasize" value="#{pizzaSearchBean.pizzasize}">
            <f:selectItems value="#{result.sizeList} var="size" itemLabel="#{size.diameter}" itemValue="#{size.sizeID}"/>
         </h:selectOneRadio>
      </li>
      <li>
         <p>Quantity:</p>
         <h:selectOneListbox id="pizzaquantity" value="#{pizzaSearchBean.pizzaquantity}" size="1">
            <f:selectItem id="quantity1" itemLabel="1x" itemValue="1">
            <f:selectItem id="quantity2" itemLabel="2x" itemValue="2">
         </h:selectOneListbox>
      </li>
      <li>
         <!-- this is where no action happens... -->
         <h:commandButton value="add to cart" action="#{pizzaSearchBean.addToCart(result.pizza.pizzaID)}"/>
      </li>
   </ul>
</h:form>
</ui:repeat>

В классе managedBean есть несколько классов для управления всеми данными. Метод addToCard выглядит так же просто, как это:

public void addToCart(int pizzaid) {
   System.out.println("pizza ID : " + pizzaid);
}

Все работает вместо метода действия commandButton "addToCart()". Неважно, что написано внутри тега действия commandButton. После рендеринга поиска пиццы и нажатия на одну из кнопок "добавить в корзину" пиццы все равно не будет выполнено никаких действий.

Я надеюсь, что вы можете помочь мне.. Спасибо!

0 ответов

Другие вопросы по тегам