JsfRenderUtils.addEventSenderHiddenFieldIfNotExists(context, this);  String onClickEvent = getOnClickEvent(context);
JsfRenderUtils.addEventHandlingHiddenFieldsIfNotExists(context, this); List<UIParameter> uiParameters = getParametersWithNameAttribute(); JsfRenderUtils.addHiddenFieldsForParametersIfNotExists(context, this, uiParameters);
    public void encodeBegin(FacesContext context) throws IOException {        ResponseWriter writer = context.getResponseWriter();        JsfRenderUtils.addEventSenderHiddenFieldIfNotExists(context, this);        String onClickEvent = getOnClickEvent(context);        writer.startElement("input", this);        writer.writeAttribute("type", (this.getType() == null) ? INPUT_SUBMIT_TYPE : this.getType(),                null);        writer.writeAttribute("id", getClientId(context), null);        writer.writeAttribute("name", getClientId(context), null);        writer.writeAttribute("style", (this.getStyle() != null) ? this.getStyle() : "", null);        writer.writeAttribute("class", (this.getStyleClass() != null) ? this.getStyleClass() : "", null);        writer.writeAttribute("alt", (this.getAlt() != null) ? this.getAlt() : "", null);        writer.writeAttribute("value", (this.getValue() != null) ? this.getValue() : "", null);        writer.writeAttribute("onclick", onClickEvent, null);        if (this.getType() != null && this.getType().equalsIgnoreCase(INPUT_IMAGE_TYPE)) {            writer.writeAttribute("src", (this.getImage() != null) ? this.getImage() : "", null);        }    }