You can call this method when the app starts to set the default locale to US.
B4X:
Private Sub SetDefaultLocaleToUS
Dim jo As JavaObject
jo.InitializeStatic("java.util.Locale").RunMethod("setDefault", Array(jo.GetField("US")))
End Sub
If you want to keep using the native locale for date related methods then set the date format before calling this method.
Yes, that is also the sort of workaround I use now. But on the long run, I believe this should be resolved within the B4J language (especially since Java has a solution for it with its locale parameter). Those are errors one can spend a lot of time on: in my case I lost more than 2 days on it.
I agree. It will be fixed. Note that the framework does handle lower casing correctly. There is a technical issue related to the way the string methods are implemented which makes it more difficult to automatically set the locale.