|
From: Arun A. <aru...@gm...> - 2013-06-10 00:40:20
|
Hi,
I am using a Spring MVC application with resteasy-spring.
I have this simple method, which is throwing an exception when I call HTTP
Post on the mapped URI.
I am using JDK 1.7, with Jetty 8, Sevlet 3.0 web.xml. Spring
- 3.2.3.RELEASE and resteasy-spring-2.3.6.Final.
Do I need to use later versions of Rest easy?
Thanks
Arun
@POST
@Consumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
@Path("/print/{realmId}/customer")
@GZIP
@ResponseBody
public DeferredResult<Customer> printAndEcho(@PathParam("realmId")
String realmId,
@QueryParam("requestId") String requestId,
Customer customer,
@HeaderParam("transport.type") String
transportType) {
LOGGER.info("realmId={}, requestId={}, transportType={},
customer={}",
new Object[]{realmId, requestId, transportType,
ToStringBuilder.reflectionToString(customer)});
DeferredResult<Customer> result = new DeferredResult<Customer>();
cachedCustomer = customer;
deferredResultMap.put(realmId+"-"+requestId, result);
return result;
}
Exception :
2013-06-09 17:24:21,929 WARN
[org.jboss.resteasy.core.SynchronousDispatcher#error():135] - Failed
executing POST /sample/print/253421978/customer
org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: Could not find
MessageBodyWriter for response object of type:
org.springframework.web.context.request.async.DeferredResult of media type:
application/xml
at org.jboss.resteasy.core.ServerResponse.writeTo(ServerResponse.java:216)
at org.jboss.resteasy.springmvc.ResteasyView$1.handle(ResteasyView.java:96)
at org.jboss.resteasy.springmvc.ResteasyView$1.handle(ResteasyView.java:81)
at
org.jboss.resteasy.springmvc.ResteasyWebHandlerTemplate.handle(ResteasyWebHandlerTemplate.java:39)
at org.jboss.resteasy.springmvc.ResteasyView.render(ResteasyView.java:112)
at
org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1208)
at
org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:992)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936)
at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:838)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:163)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:370)
at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
at
org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
at
org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
at
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Thread.java:722)
|