不解析RESTful应用程序中的视图

我正在使用Spring MVC 3使用RESTful

Web服务构建Web应用程序。该Web服务将由应用程序使用,因此永远不要真正解决对视图的任何请求。是否可以在Servlet上下文中指定任何请求都不应解析为任何视图的方法?

目前,我有:

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<property name="prefix" value="/WEB-INF/jsp/" />

<property name="suffix" value=".jsp" />

</bean>

我知道尝试将任何请求解析到jsp文件夹中相应命名的视图。但是,如果删除此选项,应用程序将尝试使用默认的视图解析器。

我担心的原因是我的应用程序日志将充满以下消息(即使它可以正常工作):

SEVERE: Servlet.service() for servlet [DispatcherServlet] in context with path [/vouchd] threw exception [Circular view path [signup]: would dispatch back to the current handler URL [/vouchd/signup] again. Check your ViewResolver setup! (Hint: This may be the result of an unspecified view, due to default view name generation.)] with root cause

javax.servlet.ServletException: Circular view path [signup]: would dispatch back to the current handler URL [/vouchd/signup] again. Check your ViewResolver setup! (Hint: This may be the result of an unspecified view, due to default view name generation.)

或使用InternalViewResolver

WARN [http-bio-8080-exec-4] (DispatcherServlet.java:1057) - No mapping found for HTTP request with URI [/app/WEB-INF/jsp/call.jsp] in DispatcherServlet with name 'DispatcherServlet'

我猜这是两个弊端中更好的一个。我不想关闭WARN级别的日志记录。

回答:

试试看@ResponseStatus。这段代码返回204,没有内容,并且跳过了视图解析:

@ResponseStatus(NO_CONTENT)

void noView() {

//...

}

如果要返回原始数据并将其序列化为JSON或XML,请使用@ResponseBody

@ResponseBody

MyPojo noView() {

return new MyPojo();

}

以上是 不解析RESTful应用程序中的视图 的全部内容, 来源链接: utcz.com/qa/423951.html

回到顶部