未找到使用 Json 的类的序列化器

2024-01-03

我有一个基本的 Spring Boot 2.1.2.RELEASE 应用程序。使用Spring Initializr、JPA、嵌入式Tomcat、Thymeleaf模板引擎,并打包为具有restful架构的可执行JAR

我有一个在 RestMethod 中返回的对象:

public class MenuAlarm {



    /**
     * 
     */
    public MenuAlarm() {
        super();
    }


    /**
     * 
     */
    public MenuAlarm(Menu menu) {

        this.menuAlias = menu.getName();
        this.menuId = menu.getId();

        menu
            .getAlerts()
            .forEach(a -> alarms.add(new Alarm(a)));

    }

    class Alarm {

        public Alarm(MenuAlert menuAlert) {

            this.percentage = menuAlert.getPercentage();

            if (menuAlert.getCriteria() > 1) {
                this.increase = true;
            } else {
                this.increase = false;
            }
            this.enabled = menuAlert.isEnabled();
        }

        public Alarm() {
            super();
        }

        Integer percentage;

        boolean increase;

        boolean enabled;

    }

    String menuAlias;

    Long menuId;

    List<Alarm> alarms = new ArrayList<Alarm>();

    public String getMenuAlias() {
        return menuAlias;
    }

    public void setMenuAlias(String menuAlias) {
        this.menuAlias = menuAlias;
    }

    public Long getMenuId() {
        return MenuId;
    }

    public void setMenuId(Long menuId) {
        this.menuId = menuId;
    }

    public List<Alarm> getAlarms() {
        return alarms;
    }

    public void setAlarms(List<Alarm> alarms) {
        this.alarms = alarms;
    }
}

但是当我返回结果时,我收到此错误:

Caused by: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class com.tdk.api.json.MenuAlarm$Alarm and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: com.tdk.api.json.UserAlerts[“menuAlarms"]->java.util.ArrayList[0]->com.tdk.api.json.MenuAlarm["alarms"]->java.util.ArrayList[0])`

您还没有告诉 Jackson 如何序列化内部 Alarm 类。

Jackson 将尝试将其序列化为 bean(因此引用 BeanSerializer),但您尚未在 Alarm 上提供任何与 JavaBeans 兼容的 getter 方法。

您的选择是为 Alarm 编写自定义序列化程序,或者添加一些公共 getter 方法,例如 getPercentage。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

未找到使用 Json 的类的序列化器 的相关文章

随机推荐

  • 如何使用 dotnet Framework 4.0 提取 zip 文件而不使用第三方 dll [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正陷入困境 我需要从网络位置下载 zip 文件 然后在本地计算机上解压缩并使用这些文件 唯一的限制是我不能使用任何第三方 dll 在 N
  • 仅一个字符的正则表达式

    我需要一个正则表达式来表示其中只有一个字母字符的字符串 例如 它应该匹配 8 x 16 x 2 2 u329398239823 43044343k43304403 但不是 xsfdjfefljefe 44434f9434343 f 98 0
  • 将图像转换为数据,反之亦然[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我在 Xcode 中使用 swift 我需要将图像转换为数据 以便将其保存在 SQLite 数据库中 并且当我从数据库检索数据对象时
  • 发送短信的广播接收器

    android中是否有广播接收器来监听短信发送事件 在我的应用程序中 我想计算每个预定义时间间隔发送的短信数量 如果无法收听发送的短信 任何人都可以共享代码来计算短信数量和指定时间 例如最后 30 分钟 检查此链接 我认为它不是完整的解决方
  • Java 对并行数组进行排序

    我必须对 1 个字符串数组和 2 个整数数组的数据库进行排序 这是我到目前为止所拥有的 public static void sortDatabase int numRecords String sDeptArr int iCourseNu
  • 水平翻转.getUserMedia的网络摄像头图像流

    所以我一直在搞乱这个页面 https tutorialzine github io pwa photobooth https tutorialzine github io pwa photobooth 基本上它的作用是激活您的网络摄像头并让
  • Control.Monad.Writer 无法在 haskell 中工作

    我一整天都在尝试编译 Haskell 代码 再次 涉及 Control Monad Writer 这是一个无法编译的代码示例向你学习 Haskell http learnyouahaskell com for a few monads mo
  • 访问服务器上使用 WebClient.UploadData 发送的确切数据

    新手问题 我使用 WebClient UploadData 方法将字节数组形式的大文本字符串发送到网站 但我不确定从服务器上的确切位置检索该数据 我读过一些帖子 说它位于我已经知道的请求对象中 但我到底如何检索我发送的特定字节数组 如以下
  • Node.JS TCP 上的无界并发/流背压

    据我了解 Node 的事件 IO 模型的后果之一是 一旦连接了接收事件处理程序 或否则开始监听数据 如果接收器无法足够快地处理传入数据 则可能会导致 无限并发 即底层节点继续尽可能快地从套接字读取数据 在事件循环上调度新数据事件 而不是阻塞
  • javascript 对于全局声明的变量返回未定义[重复]

    这个问题在这里已经有答案了 我是 javascript 的初学者 我有一个疑问 我的代码如下所示 当我运行此命令时 第一个警报框显示 未定义 我不明白为什么 非常感谢 这是因为之后hoisting but 执行前 your foo 函数内部
  • 如何将Unicode编码的字符串转换为字母字符串

    我有一个转义的字符串Unicode http en wikipedia org wiki Unicode人物 uXXXX 我想将其转换为常规 Unicode 字母 例如 u0048 u0065 u006C u006C u006F World
  • 将单选按钮数据发送到下一个活动

    我试图允许用户输入他们的姓名 然后单击三个单选按钮之一 然后单击提交按钮 在下一个活动中 它将显示他们的姓名和他们选择的单选按钮 我已经设法发送名称 但我不确定如何发送单选按钮选择 有人可以帮忙吗 这是我在主要活动布局 xml 中的内容
  • Swift TDD 和异步 URLSession - 如何测试?

    我尝试熟悉 TDD 如何测试异步 URLSession 调用 哪种 XCAssert 更适合使用 在哪里 在哪个阶段 我的第一个想法是创建一个函数 其中包含 URLSession 并在该函数内将 bool 标志设置为 true 然后在 XC
  • Pip 在防火墙后无法工作

    我正在尝试从公司防火墙后面使用 pip 但没有任何运气 我已经设置了http proxy and https proxy环境变量 wget 可以工作 但 pip 不行 我尝试过这个 sudo E pip install virtualenv
  • 如何 gzip @font-face 示例?

    有人可以提供如何 gzip webfont 套件的示例吗 生成器为我提供了这段代码 需要改变什么 font face font family DesigersBold src url desib webfont eot src url de
  • 如何在Android应用程序中过滤Listview后获得正确的位置

    在我的应用程序中 当用户在搜索框中输入内容时 列表会被过滤 但列表项的位置会发生变化 由于用户单击列表项时位置发生了变化 因此会导致不必要的活动 因为我已经根据列表项的位置设置了事件 即使在过滤列表后 列表项 行是否有任何参数保持不变 No
  • Windows 8 - IE 无法访问主机文件中列出的站点

    我在 IIS 中设置了许多本地网站 并在主机文件中包含条目以 使这些网站在本地可用 我使用的是 Windows 7 机器 所有浏览器中的一切都运行正常 迁移到 Windows 8 在 IIS 中使用相同的主机文件和相同的网站似乎会导致 In
  • 如何在按键上提交表单?

    我用这个script http www javascripter net faq searchin htm在静态页面中搜索 但我希望在我输入文本时进行搜索 而不是在单击按钮时进行搜索 我进行了搜索 发现其中任何一个都可以工作 onkeypr
  • 将整列与列表中的值相乘

    我有一个非常大的数据框 希望将每列中的每个元素与列表中的值相乘 Name c1 c2 c3 c4 0 a1 1 2 2 3 1 a2 2 1 1 2 2 a3 3 1 2 1 3 a4 2 3 3 4 l 2 3 1 4 我想做的是将整个列
  • 未找到使用 Json 的类的序列化器

    我有一个基本的 Spring Boot 2 1 2 RELEASE 应用程序 使用Spring Initializr JPA 嵌入式Tomcat Thymeleaf模板引擎 并打包为具有restful架构的可执行JAR 我有一个在 Rest