Hibernate Grails3RESTProfile422显示操作时的不可处理实体结果

Hibernate Grails3RESTProfile422显示操作时的不可处理实体结果,hibernate,rest,http,grails,http-headers,Hibernate,Rest,Http,Grails,Http Headers,我在这方面遇到了麻烦,我无法处理它,我在这里没有找到任何答案 我在Grails3.1.10中有一个应用程序,使用rest配置文件,我有一些域类和它们各自的控制器,我可以使用POST-to-save操作创建新对象,使用PUT-to-update操作更新它们,并使用GET-to-index操作列出它们,但我无法在GET-to-show操作中获得正确的响应 我不确定我遇到的问题是在申请中还是在申请中 我的URL映射如下所示: "/$controller/$action?/$id?(.$format)?

我在这方面遇到了麻烦,我无法处理它,我在这里没有找到任何答案

我在Grails3.1.10中有一个应用程序,使用rest配置文件,我有一些域类和它们各自的控制器,我可以使用POST-to-save操作创建新对象,使用PUT-to-update操作更新它们,并使用GET-to-index操作列出它们,但我无法在GET-to-show操作中获得正确的响应

我不确定我遇到的问题是在申请中还是在申请中

我的URL映射如下所示:

"/$controller/$action?/$id?(.$format)?"{
       constraints {
           // apply constraints here
       }
我也试过了

get "/resources/$id"(controller:"resource", action:"show")
结果相同:422:不可处理实体,“错误”:[10]0:{ “消息”:“类[class]的属性[]不能为空”“路径”:“/1”“\u链接:{”self:{”href:“}-}-}” 对于每个与id不同的属性

我正在向(或在第二种配置中)执行一个http get请求,其标题为:“Content Type:application/json”和“Authorization:Bearer”(我正在使用spring security rest插件来保护应用程序)。同一个请求to(或第二个配置中的to)工作得很好,并返回了一个包含所有对象的json


干杯

我认为您应该选择以下两个选项之一:

  • 在域类中使用@Resource,但不要创建控制器(在这种情况下,grails会自动生成控制器)

  • 如果您想拥有更多的控制权,可以使用url映射资源+扩展RestfulController的控制器,如文档第10.1.5.1节()

  • 在第二个选项中,URlMappings中需要类似的内容:

    "/books"(resources:"book")
    
    还有一个控制器,如:

    class BookController extends RestfulController {
      static responseFormats = ['json', 'xml']
      BookController() {
        super(Book)
      }
    }
    

    我认为您应该选择以下两个选项之一:

  • 在域类中使用@Resource,但不要创建控制器(在这种情况下,grails会自动生成控制器)

  • 如果您想拥有更多的控制权,可以使用url映射资源+扩展RestfulController的控制器,如文档第10.1.5.1节()

  • 在第二个选项中,URlMappings中需要类似的内容:

    "/books"(resources:"book")
    
    还有一个控制器,如:

    class BookController extends RestfulController {
      static responseFormats = ['json', 'xml']
      BookController() {
        super(Book)
      }
    }