jquery - Jackson (JSON) 当 Float 为 null 时抛出 JsonMappingException

标签 jquery json spring spring-mvc jackson

我正在使用 Spring(与 Jackson)和 jQuery 将表单作为对象传递。我的 pojo 包含可为 null 的 float 。然而,当字段为空时, jackson 会抛出异常:

org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.lang.Float from String value '': not a valid double value

我必须做什么才能允许空值(或表单字段中的空值)?

谢谢 呃

最佳答案

默认情况下,Jackson 确实只将显式 JSON null 视为 null 值。但是,如果需要从空字符串强制转换为 null,则可以轻松添加功能请求。实际上,这听起来像是一个不错的改进——这就是开源项目经常被改进的方式,基于用户对他们认为应该存在的东西、事情应该工作的方式的要求。

短期内,您还可以注册接受空字符串并生成 null 的自定义反序列化器( http://wiki.fasterxml.com/JacksonHowToCustomDeserializers 讲述了一些有关它的信息,尽管不是指南)。

关于jquery - Jackson (JSON) 当 Float 为 null 时抛出 JsonMappingException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3535569/

相关文章:

javascript - 使用 Java 脚本的依赖下拉列表仅适用于更改主下拉列表,如果已选择主下拉列表,则它必须在页面加载时工作

jquery - 将 'Search' 设为远程,并将 jqGrid 中的其他所有内容(排序、分页等)设为本地

javascript - 垂直下拉菜单显示子菜单,当单击另一个菜单项时关闭上一个菜单项

javascript - 如何优化多个 Array.find()

java - 如何将 JSON 响应转换为字符串数组

jquery - CKEditor 中可拖动的图像

javascript - 如何从 API 获取 Yahoo Weather Backgrounds?

java - Spring 启动测试 : context loaded for every test?

java - 如何从 MongoRepository/QueryDSL 获取不同的字段?

java - 当我使用 ConcurrentSessionControlAuthenticationStrategy 而不是 ConcurrentSessionControlStrategy 时,sessionRegistry 为空