Grails 1.3.9 JSON转换Double.NaN值

时间:2013-10-25 11:09:07

标签: grails groovy

我有一个域类树,我想通过深度转换器转换为JSON:

import grails.converters.deep.JSON

deepObject as JSON

树中的某处我在某些字段中有Double.NaN值,而JSON解析器抛出异常:

org.apache.commons.lang.UnhandledException: org.codehaus.groovy.grails.web.converters.exceptions.ConverterException: org.codehaus.groovy.grails.web.json.JSONException: JSON does not allow non-finite numbers

我该如何处理这个案子?可能会返回一个字符串('NaN')。

我尝试重新调整 JSONObject.testValidity(Object o)方法,但这是一个pojo,所以它不起作用。

修改

我还试图在Bootstrap.groovy中注册一个编组:

JSON.registerObjectMarshaller(Double) {
    return it == Double.NaN ? 'NaN' : it.toString()
}

但它也不会起作用。

0 个答案:

没有答案