我有定义的以下控制器
class BookController {
def book(BookCommand bookCommand,
AnotherBookCommand bookCommand2)
{
....
}
当我调试它时,绑定在bookCommand上完成,而当bookCommand2进行绑定时,它会抛出此异常
Error in object 'bookCommand2': codes []; arguments []; default message [Error occurred initializing command object [bookCommand2]. org.apache.groovy.json.internal.Exceptions$JsonInternalException: Wrapped Exception
CAUSE java.io.IOException :: Stream closed]
如果我尝试切换参数的顺序,即
class BookController {
def book(AnotherBookCommand bookCommand2,
BookCommand bookCommand)
{
....
}
在bookCommand2上完成绑定,并且bookCommand的绑定引发异常。
Error in object 'bookCommand': codes []; arguments []; default message [Error occurred initializing command object [bookCommand]. org.apache.groovy.json.internal.Exceptions$JsonInternalException: Wrapped Exception
CAUSE java.io.IOException :: Stream closed]
知道这里发生了什么吗?
我们不支持将正文的请求绑定到多个命令对象。您可以选择的一种方法是将它们聚合为1类,如下所示:
class SomeClass {
BookCommand bookCommand
BookCommand anotherBookCommand
}
然后让您的控制器动作接受其中之一并相应地组织JSON的主体。