Найти компонент по идентификатору в JSF
Я хочу найти некоторыеUIComponent
от управляемого бина по идентификатору, который я предоставил.
Я написал следующий код:
private UIComponent getUIComponent(String id) {
return FacesContext.getCurrentInstance().getViewRoot().findComponent(id) ;
}
Я определилp:inputTextarea
как:
<p:inputTextarea id="activityDescription" value="#{adminController.activityDTO.activityDescription}" required="true" maxlength="120"
autoResize="true" counter="counter" counterTemplate="{0} characters remaining." cols="80" rows="2" />
Теперь, если вызов метода какgetUIComponent("activityDescription")
это возвращаетсяnull
, но если я назову это какgetUIComponent("adminTabView:activityForm:activityDescription")
тогда я могу получитьorg.primefaces.component.inputtextarea.InputTextarea
экземпляр.
Есть ли способ получить компонент только с идентификатором, т. Е. «ActivityDescription», а не с абсолютным идентификатором, т. Е. «AdminTabView: activityForm: activityDescription»?