Does this possible? In source code: Object org.apache.struts2.json.JSONPopulator.convertPrimitive(Class clazz, Object value, Method method) throws JSONException { if (value == null) { if (Short.TYPE.equals(clazz) || Short.class.equals(clazz)) return (short) 0; else if (Byte.TYPE.equals(clazz) || Byte.class.equals(clazz)) return (byte) 0; else if (Integer.TYPE.equals(clazz) || Integer.class.equals(clazz)) return 0; else if (Long.TYPE.equals(clazz) || Long.class.equals(clazz)) return 0L; else if (Float.TYPE.equals(clazz) || Float.class.equals(clazz)) return 0f; else if (Double.TYPE.equals(clazz) || Double.class.equals(clazz)) return 0d; else if (Boolean.TYPE.equals(clazz) || Boolean.class.equals(clazz)) return Boolean.FALSE; else return null; } else if …
I suggest change the first line to (or other more reasonable code like this) : If (value == null || ( !String.class.equals(clazz) && (value instanceof String) && ("".equals(value)))) { ... this can process empty string "" to a right value, and no throw a Exception : Number formcat exception for input string"" . does it more smart? sorry for my poor english. Regards. On Thu, Nov 25, 2010 at 12:43 AM, Maurizio Cucchiara <maurizio.cucchi...@gmail.com> wrote: > 2010/11/24 Martin Gainty <mgai...@hotmail.com> > >> if the <target> attribute is available in object acquired by >> invocation.getAction() then you should see the target >> >> does this answer your question? >> > > Actually, It doesn't. > I meant that conversion methods like convertPrimitive (see the code below) > use to take class type and value as argument and they always try to > understand the kind of type they're facing, choosing by value (for this > reason I called "value driven"). Why don't they choose conversion by type > destination? > > > private Object convertPrimitive(Class clazz, Object value, Method method) > throws JSONException { > if (value == null) { > if (Short.TYPE.equals(clazz) || Short.class.equals(clazz)) > return (short) 0; > ... > } else if (value instanceof Number) { > Number number = (Number) value; > > > -- > Maurizio Cucchiara > -- ======================== Knight Chen --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org