Я хотел бы получить пользовательский ввод от компонента в моем Java-коде. Что-то похоже на textbox.text в aspx/.NET. Я нахожу документацию очень запутанной, и мои попытки не компилируются. Есть ли способ?Подключить пользовательский ввод JSPX непосредственно от тринидада UIXComponent в моем Java-коде?
<tr:inputDate id="date" required="true"
inlineStyle="color:rgb(0,58,117); font-weight:bold;"
value="#{processScope.benefit.serviceDate}"
immediate="false"
onchange="submit();"
label="#{mb_ResourceBean.res['claim.serviceDate.label']}">
<tr:convertDateTime pattern="yyyy/MM/dd" secondaryPattern="yyyyMMdd"
type="date"/>
<tr:validateDateTimeRange minimum="#{bk_ClaimBean.minDate}"
maximum="#{bk_ClaimBean.maxDate}"/>
</tr:inputDate>
Плохо половинной попытка захватить вход:
UIViewRoot viewRoot = FacesContext.getCurrentInstance().getViewRoot();
UIXComponent component = viewRoot.findComponent("date"); //does not compile
Мне нужно вывести дату, чтобы вставить ее в сообщение об ошибке. Я унаследовал какой-то вонючий код. Что касается привязки значения к processScope, я не знаю, почему это было сделано и боятся неизвестных последствий его изменения. – cmac
Вы взглянули на добавление пакета сообщений? (http://stackoverflow.com/a/15122278/880619) –
Вы также можете проверить 'RequestContext.getCurrentInstance(). getPageFlowScope()', который, вероятно, будет содержать объект «выгоду». См. Также http://myfaces.apache.org/trinidad/trinidad-api/apidocs/org/apache/myfaces/trinidad/context/PageFlowScopeProvider.html –