Компонент кнопки в методе действия можно получить по UIComponent#getCurrentComponent()
:
public void submit() {
UIComponent button = UIComponent.getCurrentComponent(FacesContext.getCurrentInstance());
String id = button.getId(); // or button.getClientId();
// ...
}
В качестве альтернативы, если вы нацеливаетесь на контейнер Servlet 3.0 / EL 2.2 (Tomcat 7, Glassfish 3 и т. Д.), Тогда вы можете просто вызывать методы с аргументами в EL:
<h:commandButton action="#{bean.submit(component.id)}" /> <!-- or component.clientId -->
с
public void submit(String id) {
// ...
}