Hi Jakob,
I have tried like you suggest, but does not works.
<f:selectItem itemValue="#{'A'}" itemLabel="A"/>
<f:selectItem itemValue="#{'B'}" itemLabel="B"/>
<f:selectItem itemValue="#{'C'}" itemLabel="C"/>
Thanks,
Rafael Santini
----- Original Message -----
From: "Jakob Korherr" <[email protected]>
To: "MyFaces Discussion" <[email protected]>
Cc: "SANTINI Rafael" <[email protected]>
Sent: Wednesday, December 16, 2009 10:38 AM
Subject: Re: This is a bug?
Hi,
+1 for your suggestion, mike!
To generate a Character value in <f:selectItem> use #{'A'} for 'A' and
#{'B'} for 'B' respectively.
I just tried this (although with JSF 2.0), but I think it also works on
1.1.
Regards,
Jakob
2009/12/16 Mike Kienenberger <[email protected]>
This question pops up fairly often, and it's always a programming
error. Maybe we should change the error text to include the type
expected and the actual type found?
On Wed, Dec 16, 2009 at 8:12 AM, Jakob Korherr <[email protected]>
wrote:
> Hi Rafael,
>
> You have to use String instead of Character for the option property in
Bean,
> because <f:selectItem> generates a String value for itemValue="A".
>
> If you really want to use a Character though, you have to make sure
> that
> <f:selectItem> generates values of type Character and also provide a
> Character-converter for <h:selectOneMenu>.
>
> Regards,
>
> Jakob Korherr
>
>
> 2009/12/16 SANTINI, Rafael <[email protected]>
>
>> Hi,
>>
>> I can't figure out why "value is not valid" is throwed. I'm using
>> myfaces-core-1.1.7.
>>
>> Test case:
>>
>> <h:form>
>> <h:outputText value="Option:"/>
>> <h:selectOneMenu value="#{bean.option}" id="option">
>> <f:selectItem itemValue="A" itemLabel="A"/>
>> <f:selectItem itemValue="B" itemLabel="B"/>
>> <f:selectItem itemValue="C" itemLabel="C"/>
>> </h:selectOneMenu>
>> <h:message for="option"/>
>> <h:commandButton value="Test" action="#{bean.test}"/>
>> </h:form>
>>
>> public class Bean {
>>
>> private Character option = 'A';
>>
>> public Character getOption() {
>> return option;
>> }
>>
>> public void setOption(Character option) {
>> this.option = option;
>> }
>>
>> public void test() {
>> System.out.println(option);
>> }
>>
>> }
>>
>> This is a bug? What I'm missing?
>>
>> Thanks,
>>
>> Rafael Santini
>>
>