0

最近、JSF 1.x から JSF 2.x にアップグレードしました。

2 年前からアプリケーションを稼働させています。私たちが直面している問題は次のとおりです。

JSFに以下のコードがあります

 <h:inputText id="DescriptionText" required="true" value="#{scenarioDesc}"> 

<f:converter converterId="RequiredConvertor"/> 
<f:attribute name="label" value="#{giamsBundle['lbl.request.summary.desc.validation']}"/>
</h:inputText>

以下のように、必要なコンバーターを使用してラベル値を取得します

String componentLabel = (String) component.getAttributes().get("label");

しかし、componentLabel は null を返します。リソースバンドル名を定義すると値を取得できませんが、f:attribute タグの値に任意の文字列を追加すると正常に動作します

助けてください。

4

1 に答える 1

0

これは、Mojarra 2.1.27 で問題なく動作します。ただし、既存のコンポーネント属性の属性を設定しているため、他の実装では命名が同じ順序で処理されない場合があります。

修正するには、既存の label 属性のいずれかを使用します。

<h:inputText id="DescriptionText" required="true" value="#{scenarioDesc}"
  label="${giamsBundle['lbl.request.summary.desc.validation']}"
  converter="RequiredConvertor" />

または、'label' 以外の属性名を使用してください。

于 2014-04-24T18:33:44.017 に答える