Я пытаюсь использовать jsonp на моем базовом приложении. В моем веб-сервисе я пытаюсь использовать библиотеку Джерси для использования ответа JSONWithPadding.Не удалось найти MessageBodyWriter для объекта-ответчика типа: com.sun.jersey.api.json.JSONWithPadding типа носителя: application/x-javascript
Проблема в том, что «приложение/x-javascript» не поддерживается.
Мой код:
@GET
@Path("/issues/jsonp")
@Produces("application/x-javascript")
public JSONWithPadding getIssuesJsonp(@Context HttpServletRequest req,
@PathParam("ppid") String qppid,
@QueryParam("callback") String callback) {
Principal principal = req.getUserPrincipal();
String username = principal.getName();
try {
List<IssueDTO> list = service.getIssuesDTO(username, qppid);
IssuesResult r = new IssuesResult();
r.setIssues(list);
System.out.println("CALLBACK:" + callback);
return new JSONWithPadding(r,callback);
} catch (Exception e) {
String message = "Internal Server Error";
LOG.error(message, e);
Result r = new Result(PPStatusCode.INTERNAL_SERVER_ERROR, message);
return new JSONWithPadding(noCache(500, r),callback);
}
}
И результат:
Etat HTTP 500 - Не удалось найти MessageBodyWriter для объекта ответа типа: com.sun.jersey.api.json.JSONWithPadding Тип носителя: application/javascript
Может кто-нибудь мне помочь?
Edit: полный StackTrace:
18: 52: 33243 WARN [org.jboss.resteasy.core.SynchronousDispatcher] (HTTP - 127.0.0.1-8080-1) Не выполнение GET с/п/вопросы/JSONP: org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: не удалось найти MessageBodyWriter для объекта ответа типа: com.sun.jersey.api.json.JSONWithPadding типа носителя: приложения/x- javascript на org.jboss.resteasy.core.ServerResponse.writeTo (ServerResponse.java:216) [resteasy-jaxrs-2.3.2.Final.jar:] на org.jboss.resteasy.core.SynchronousDispatcher.writeJaxrsResponse (SynchronousDispatcher.java:585) [Resteasy-jaxrs-2.3.2.Final.jar:] на org.jboss.resteasy.core.SynchronousDispatcher.invoke (SynchronousDispatcher. java: 506) [resteasy-jaxrs-2.3.2.Final.jar:] at org.jboss.resteasy.core.SynchronousDispatcher.invoke (SynchronousDispatcher.java:119) [resteasy-jaxrs-2.3.2.Final .jar:] в org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service (ServletContainerDispatcher.java:208) [resteasy-jaxrs-2.3.2.Final.jar:] на org.jboss.resteasy .plugins.server.servlet.HttpServletDispatcher.service (HttpServletDispatcher.java:55) [resteasy-jaxrs-2.3.2.Final.jar:] на org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service (HttpServletDispatcher.java:50) [resteasy-jaxrs-2.3.2.Final.jar:] в javax.servlet.http.HttpServlet.service (HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar: 1.0.0.Final] в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:] в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:] в орг. apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.Sta ndardContextValve.invoke (StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:] в org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:489) [jbossweb-7.0.13 .Final.jar:] в org.jboss.as.jp.interceptor.WebNonTxEmCloserValve.invoke (WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.1.1.Final.jar: 7.1.1.Final] на org.jboss.as.web.security.SecurityContextAssociationValve.invoke (SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar: 7.1.1.Final] в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java: 155) [jbossweb-7.0.13.Final.jar:] в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:] в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:] в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:] в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:877) [jbo ssweb-7.0.13.Final.jar:] at org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:671) [jbossweb-7.0.13.Final.jar:] at org. apache.tomcat.util.net.JIoEndpoint $ Worker.run (JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:] на java.lang.Thread.run (Thread.java:722) [ rt.jar: 1.7.0_11]
Алан
Можете ли вы предоставить полную стеклу? –
да, все сделано! – brunettia