Я нашел способ менее хакерский и хорошо работающий. Идея скрыта commandButton
.
К сожалению, стиль display:none
нельзя использовать, потому что тогда commandButton
будет игнорироваться. visibility:hidden
нехорошо, поскольку сохраняет зарезервированное пространство компонента.
Но мы можем точно настроить стиль, чтобы размер его внешнего вида был равен нулю с помощью следующего CSS:
.zeroSize {
visibility: hidden;
padding: 0px;
margin: 0px;
border: 0px;
width: 0px;
height: 0px;
}
И теперь все, что нужно, это:
<h:commandButton value="" action="#{bean.save}" class="zeroSize" />
В результате появится невидимая командная кнопка, которая в соответствии с правилом first-next-submit-button может быть активирована.