Переменный параметр поиска для resourceBundle? - PullRequest
2 голосов
/ 24 февраля 2011

В настоящее время я использую переменную resourceBundle для получения текстовых значений в моем коде JSF, например. как это:

<h:outputText value="#{resourceBundle.welcomeMessage}" />

Есть ли способ поместить ключ сообщения в переменную и передать его в качестве динамического параметра в комплект ресурсов? Я надеялся, что смогу сделать что-то вроде этого:

<c:set var="name" value="#{'welcomeMessage'}" />
<h:outputText value="#{resourceBundle.get(name)}" />

Ответы [ 3 ]

1 голос
/ 24 февраля 2011
1 голос
/ 24 февраля 2011

Пакет ресурсов принимает динамический параметр.Вот фрагмент из моего проекта:

    <f:loadBundle basename="#{siteName}" var="bundle"/>
        ....
               <h:dataTable value="#{summary.restrictionList}" var="restrictionList" cellspacing="0" cellpadding="0"> 
               ....

                            <h:outputFormat value="#{bundle['summary.label.blockcodemsg']}">
                                <f:param value="#{restrictionList['lastFourDigits']}"/>
                                <f:param value="#{bundle[restrictionList['optionDesc']]}"/>
                                <f:param value="#{bundle[restrictionList['optionResolutionDesc']]}"/>
                            </h:outputFormat>
     ....
1 голос
/ 24 февраля 2011

Просто создайте выделенный ManagedBean с методом resolveKey(String key), из которого вызывайте поиск resourceBundle и просматривайте и используйте этот компонент.

...