【发布时间】:2015-11-17 08:07:47
【问题描述】:
According to Extending Restful Controller
我可以创建这个 RestfulController 的子类,成为我想要的每个 REST 控制器的基本控制器类。
可以将其子类化为 DIRECT 资源控制器。
Class BooksController extends RestfulController {
BooksController() {super(Book)}
但如果我按照 grails DOC 创建一个像这样的基本控制器:
class MyRestController<T> extends RestfulController<T> {
static responseFormats = ['json', 'xml']
MyRestController(Class<T> domainClass) {this(domainClass, false)}
MyRestController(Class<T> domainClass, boolean readOnly) {
super(domainClass, readOnly)
}
我遇到了一个错误:
Failed to instantiate [clash.MyRestController]: No default constructor found;
我尝试将这个控制器放在控制器文件夹或 src 文件夹中。
仅当我创建默认构造函数时才有效,但这不是我想要的。我不希望此类为任何域类提供 API,但我想创建扩展此类的新控制器。
class BooksController extends MyRestController {
BooksController() {super(Book)}
【问题讨论】:
标签: rest grails controller