public void encodeBegin(final FacesContext context,
final UIComponent component) throws IOException {
assertNotNull(context, component);
if (!component.isRendered()) {
return;
}
final THtmlRadioItem htmlInputRadio = (THtmlRadioItem) component;
final String name = htmlInputRadio.getName();
final HtmlSelectOneRadio parent = (HtmlSelectOneRadio) (name != null ? UIComponentUtil
.findParent(component, HtmlSelectOneRadio.class, name)
: component.getParent());
final String valueStr = ValueHolderUtil.getValueForRender(context,
parent);
final String clientId = parent.getClientId(context);
final Converter converter = RendererUtil.findConverter(context, parent);
final Object itemValue = htmlInputRadio.getValue();
final String itemValueStr = UIValueUtil.getValueAsString(context,
component, itemValue, converter);
final boolean checked = valueStr.equals(itemValueStr);
final boolean disabled = parent.isDisabled() ||
htmlInputRadio.isDisabled();
renderRadio(context, htmlInputRadio, itemValueStr, clientId, checked,
disabled);
}