@Override
public int doStartTag() throws JspException {
int result = super.doStartTag();
ButtonTag button = new ButtonTag();
button.setPageContext(pageContext);
button.setParent(getParent());
button.setLabel(StringUtils.isEmpty(label) ? "Finish Wizard" : label); // todo: i18n
button.setAction(action);
button.setActionListener("#{" + wizard + ".finish}");
button.setDisabled(Boolean.toString(action == null));
// button.setDisabled(controller.replace("}", ".finishAvailable}").replace("#{", "#{!"));
button.doStartTag();
button.doEndTag();
return result;
}