According to the TLD, convertNumber accepts ValueExpressions for its pattern attribute. But it doesn't seem to work (JSF 1.2 RI):
<h:outputText value="#{Test.numberValue}">
<f:convertNumber pattern="#{Test.numberPattern}" />
</h:outputText>
outputs
0.0210000000000000013045120539345589349977
(Test.numberValue evaluates to 0.021
, Test.numberPattern to "0.00%"
)
If I use a String literal, everything works fine:
<h:outputText value="#{Test.numberValue}">
<f:convertNumber pattern="0.00%" />
</h:outputText>
outputs
2,10%
The h:outputText
is part of a h:dataTable
column, if that matters.