But it for in common the El-Resolver should be able to convert the 'w' into a 
java.lang.Long in this case.
May be this is an issue with Tomcat 7.0.27?
Should somebody (may be I) file this at https://issues.apache.org/ ?

Sincerly,
burghard.britzke

Am 11.06.2012 um 11:22 schrieb burghard.britzke:

> Thank you!
> your tip did it. I changed the property type to string because 119 is more 
> ambigous than 'w' in this case.
> 
> Sincerly,
> burghard.britzke
> 
> Am 11.06.2012 um 09:58 schrieb Konstantin Kolinko:
> 
>> 2012/6/11 burghard.britzke <b...@charmides.in-berlin.de>:
>>> with tomcat 7.0.27, primefaces 3.3, myfaces 2.1.17, weld 1.1.8
>>> 
>>> for the jsf-source
>>> Line 56: <h:graphicImage
>>> Line 57:    value="/images/#{personenBean.aktuellePerson.geschlecht eq 'w' 
>>> ? 'fe':''}male.png">
>>> Line 58: </h:graphicImage>
>>> 
>>> and the bean
>>> public class Person implements Serializable {
>>>       @Column(name = "\"geschlecht\"", nullable = false, length = 1)
>>>       private char geschlecht;
>>> ...
>>> 
>>> an Exception is thrown
>>> 
>>> java.lang.reflect.InvocationTargetException
>>> Caused by:<br/>javax.el.ELException - Cannot convert w of type class 
>>> java.lang.String to class java.lang.Long
>>> at org.apache.el.lang.ELSupport.coerceToNumber(ELSupport.java:304)
>>> personen.xhtml at line 57 and column 92    
>>> value="/images/#{personenBean.aktuellePerson.geschlecht eq 'w' ? 
>>> 'fe':''}male.png"
>>> 
>>> At MyFaces Discussion <us...@myfaces.apache.org> they told me this would 
>>> probably be an issue with tomcat so I downgraded to Tomcat 7.0.25 and the 
>>> error disappeared.
>>> What are the next steps to get rid of this exception with Tomacat 7.0.27?
>>> 
>> 
>> Yes, Tomcat behaviour changed and new behaviour follows the EL
>> specification more closely. It was because of this bug report:
>> https://issues.apache.org/bugzilla/show_bug.cgi?id=52666
>> 
>> See EL specification for more details.
>> 
>> According to EL 2.2 ch. 1.18.3 coercion from char to a number is performed as
>> "If A is Character, convert A to new Short((short)a.charValue()) ..."
>> 
>> so you have to s/'w'/119/.
>> 
>> There might be other workarounds, such as
>> a) Add another property to that bean that will return the value as String
>> b) Use a function such as fn:trim() from JSTL to force conversion of
>> that value into String.
>> 
>> Best regards,
>> Konstantin Kolinko
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: users-h...@tomcat.apache.org
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to