在我的grails应用程序中,我有一个自定义InvalidTokenException
,如下所示:
class InvalidTokenException extends Exception{
public InvalidTokenException() {}
public InvalidTokenException(String message)
{
super(message);
}
}
我将按照以下方式投入我的服务:
throw new InvalidTokenException("Invalid token : '${word}'")
我在我的控制器中捕获并呈现给客户端,如下所示:
catch(e)
{
//send the exception to the client for rendering an error message.
render(status: 400, text: e)
return false //stops further execution
}
虽然我想删除它只包含文本“Invalid token:word”而不是“Exception uk.co.litecollab.exceptions.InvalidTokenException Invalid token:word”的消息
任何想法如何做到这一点?
答案 0 :(得分:1)
将其更改为render(status: 400, text: e.message)
,因为您目前正在利用e
自动转换为调用toString()
方法的字符串。直接调用getMessage()
会更有意义,并且在这里做你需要的。