groovy - Micronaut CompileStatic JSON 对象 - 静态类型检查 - 没有这样的属性:类的 bookid:java.lang.Object
问题描述
在我的 Micronaut 控制器中,我有以下代码来解析 JSON 对象。当我使用@CompileStatic
注释时,它会抛出以下错误。
@Post("/save")
def save(@Body Object JSON) {
String bookid=JSON?.bookid
String name=JSON?.name
def b =bookService.save(bookid,name)
return HttpResponse.created(b)
}
错误
BookController.groovy: 58: [Static type checking] - No such property: bookid for class: java.lang.Object
有没有办法用编译静态注释来修复这个错误消息?
谢谢
解决方案
在 Jeff Brown 的帮助下,我改变了。我的保存方法是这样的。
@Post('/')
Book save(Book b) {
bookService.save b
}
推荐阅读
- ibm-mq - 谁能解释在 MQ 中启用活动跟踪有什么用?
- apache-kafka - 前端应用程序应该知道分布式事务(saga)状态吗?
- amazon-web-services - Amazon API Gateway 不支持的媒体类型
- virtual-machine - 关于部署在 VM 上的 Tpot
- python - 为什么我收到 AttributeError:“IP”对象没有属性“SourceIp”
- asp.net - 如何避免将一个序列号分配给多个相似的项目?
- javascript - 在javascript中自动裁剪图像空白
- reactjs - Webpack Hot-Reload 失败并显示“意外的令牌 '['。预期在类主体的开头打开 '{'。”
- flutter - Flutter 升级后,[gradle BUILD FAILED] 是什么原因造成的?
- python - 如何从直方图源文件在python中创建直方图