Stripes simply uses NumberFormat under the hood, that is where this behavior is
coming from. So it's either a jdk bug or not a bug at all. See
http://stripes.svn.sourceforge.net/viewvc/stripes/trunk/stripes/src/net/sourceforge/stripes/validation/NumberTypeConverterSupport.java?revision=783&view=markup
Also "faield" is spelled wrong there.
public class NumberFormatTest {
public static void main(String[] args) {
Locale locale = new Locale("ar", "AE");
NumberFormat format = NumberFormat.getInstance(locale);
convert(locale, format, "-1");
convert(locale, format, "1-");
}
private static void convert(Locale locale, NumberFormat format, String
input) {
ParsePosition pp = new ParsePosition(0);
pp.setIndex(0);
Number number = format.parse(input, pp);
if (number != null && input.length() == pp.getIndex()) {
System.out.println("Successfully converted " + input +
" to "
+ number);
} else {
System.out.println("Failed to convert " + input + "
using locale "
+ locale);
}
}
}
-----Original Message-----
From: Martin Walsh [mailto:[email protected]]
Sent: Wednesday, July 08, 2009 7:49 AM
To: [email protected]
Subject: [Stripes-users] RTL support for Integer Type Converter
It seems as though there is a bug in the Stripes IntegerTypeConverter
when it is used with right to left languages. When a negative value is
supplied, stripes fails validation.
I believe the problem is that the converter expects "1-" for RTL
languages, when in fact it should be expecting "-1". This is because in
RTL languages, numbers are still written the same as in LTR languages.
Could someone confirm this.
Here is a list of the failing locales:
Faield to convert -1 using locale ar_AE
Faield to convert -1 using locale ar_IQ
Faield to convert -1 using locale ar_YE
Faield to convert -1 using locale ar_QA
Faield to convert -1 using locale mk_MK
Faield to convert -1 using locale ar_SA
Faield to convert -1 using locale ar_LB
Faield to convert -1 using locale ar_KW
Faield to convert -1 using locale ar_SD
Faield to convert -1 using locale ar_SY
Faield to convert -1 using locale ar_BH
Faield to convert -1 using locale ar_TN
Faield to convert -1 using locale ar_JO
Faield to convert -1 using locale ar_EG
Faield to convert -1 using locale ar_MA
Faield to convert -1 using locale ar_DZ
Faield to convert -1 using locale ar_LY
Faield to convert -1 using locale ar
Faield to convert -1 using locale ar_OM
Thanks,
Martin.
------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Stripes-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-users
------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Stripes-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-users