2014-09-25 45 views
3

我使用Restlet框架来提供RESTful服务。如何自定义Restlet的错误消息

我用ResouceException返回HTTP错误代码,如400错误请求,等等。

我用代码,名称和desc“新建”ResourceException(代码,名称,desc,uri)。我得到以下输出:“错误的请求”

Bad Request (name) 

period is not a number (desc) 

You can get technical details here. (uri,though I didn't provide it) 

Please continue your visit at our home page. (home page, I didn't provide, too) 

我觉得最后两句是用户纠正没有用。

我可以删除它们吗?怎么做?或者如果我想输出其他的东西,如何定制消息。

非常感谢。

回答

3

你可以用你自己的一个替换默认的StatusService

扩展类并覆盖getRepresentation(Status, Request, Response)以提供您想要的格式。

这个就可以在你的Application使用setStatusService(StatusService)

可能有一个稍微最新的方式做到这一点,因为我使用已经经历了几个的Restlet更新,现在的方法进行设置,但它仍然有效。

更新

为的Restlet版本2.3.x版本 的方法重写是toRepresentation(Status, Request, Response)

+0

为什么不实现这ResourceException或状态构造函数,我认为这将是方便开发者使用它。 – NingLee 2014-09-26 01:35:39

+0

@NingLee我实际上并不是Restlet团队的成员,我可能已经给出了这种印象,我已经稍微修改了它,以消除这种含义。随意问他们?但我不能说出他们的推理。 – Caleryn 2014-09-26 10:34:23