2013-08-12 3 views
1

내가 가진 JAX-RS JSON 채널을 찾는 데 실패는 :JSON JAX-RS 채널 : 자원 /HtmlDefaultRepresentation/defaultHtmlEntry.jsp

@Path("/data") 
public class DataChannel { 

@GET 
@Produces(MediaType.APPLICATION_JSON) 
public Response getGridData(@HeaderParam("Range") String rangeHeader) { 

문제는 (일반적으로) 최초의 호출시에 나는 윙크의에서 예외를 가지고 있다는 것입니다 HtmlProvider 후속 호출 correclty 처리하고 JSON 리턴하면서 :

0000006f 서블릿 E com.ibm.ws.webcontainer.servlet.ServletWrapper 서비스 SRVE0068E 일 : 예외 서비스 방법 중 하나에 의해 발생 된 서블릿 응용 프로그램 [qmslmsv_ear]의 [de.datev.qmrzsv.rest.ApplicationConfig] 예외 생성 : [javax.ws.rs.WebApplicationException : com.ibm.ws.jsp.webcontainerext.JSPErrorReport : JSPG0036E는 : org.apache.wink.server.internal에서 찾기 자원 /HtmlDefaultRepresentation/defaultHtmlEntry.jsp에 실패 .providers.entity.html.HtmlProvider.include 에서 org.apache.wink.server.internal.providers.entity.html.HtmlProvider.writeTo (HtmlProvider.java:112)에서 (HtmlProvider.java:78) 조직도 .htmlSyndEntryProvider.writeTo java : 81) at .htm. : org.apache.wink.server.internal.handlers.FlushResultHandler.handleResponse에서 org.apache.wink.common.internal.providers.entity.FormatedExceptionProvider.writeTo (FormatedExceptionProvider.java:48 108) ) (FlushResultHandler 된 .java : 199) org.apache.wink.server.handlers.ResponseHandlersChain.handle에서 org.apache.wink.server.handlers.AbstractHandler.handleResponse (AbstractHandler.java:38)에서 (ResponseHandlersChain.java:26) 에서 org.apache.wink.server.handlers.ResponseHandlersChain.handle org.apache.wink.server.handlers.AbstractHandlersChain.doChain (AbstractHandlersChain.java:75)에서 (ResponseHandlersChain.java:22) 에서 363,210 조직도 org.apache.wink에서 .apache.wink.server.handlers.AbstractHandler.handleResponse org.apache.wink.server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.java:26)에서 (AbstractHandler.java:39) .server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.java:22) at org.apache.wink.server.handlers.AbstractHandlersChain.doChain (AbstractHandlersChain.java:75) at org.apache.wink.server.handlers.AbstractHandler.handleResponse org.apache에서 org.apache.wink.server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.java:26) 에서 (AbstractHandler.java:39) . wink.server.handlers.ResponseHandlersChain.handle org.apache.wink.server에서 org.apache.wink.server.handlers.AbstractHandlersChain.doChain (AbstractHandlersChain.java:75) 에서 (ResponseHandlersChain.java:22). 핸들러 .AbstractHandler.handleResponse (AbstractHandler.java:39) at org.apache.wink.server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.자바 26) org.apache.wink.server.handlers.AbstractHandlersChain.doChain에서 org.apache.wink.server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.java:22) (AbstractHandlersChain.java:75)에서 org.apache.wink.server.internal.log.Responses.handleResponse org.apache.wink.server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.java:26)에서 (Responses.java:90) 에서의 01,235에 org.apache.wink.server.handlers.ResponseHandlersChain.handle org.apache.wink.server.handlers.AbstractHandlersChain.doChain (AbstractHandlersChain.java:75)에서 (ResponseHandlersChain.java:22) org.apache에서 16,org.apache.wink.server.handlers.AbstractHandler.handleResponse org.apache.wink.server.handlers.ResponseHandlersChain.handle (ResponseHandlersChain.java:26)에서 (AbstractHandler.java:39) org.apache.wink.server에서 .wink.server.handlers.ResponseHandlersChain.handle org.apache.wink.server.handlers.AbstractHandlersChain.doChain (AbstractHandlersChain.java:75)에서 (ResponseHandlersChain.java:22) 에서 .handlers.AbstractHandlersChain.run org.apache.wink.server.internal.RequestProcessor.handleRequestWithoutFaultBarrier (RequestProcessor.java:232)에서 (AbstractHandlersChain.java:60) 또는 gmail.server.internal.RequestProcessor.handleRequest .http.HttpServlet.service (HttpServlet.java:668) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service (ServletWrapper.java:1225) at com.ibm.ws.webcontainer.servlet.ServletWrapper. handleRequest com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest (ServletWrapperImpl에서 com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:457)에서 (ServletWrapper.java:775) . java : 178) at com.ibm.ws com.ibm.ws.webcontainer.webapp에서 .webcontainer.filter.WebAppFilterManager.invokeFilters com.ibm.ws.webcontainer.webapp.WebApp.handleRequest (WebApp.java:3761)에서 (WebAppFilterManager.java:1032) com.ibm.ws.webcontainer.WSWebContainer.handleRequest에서 com.ibm.ws.webcontainer.WebContainer.handleRequest (WebContainer.java:975) 에서 .WebGroup.handleRequest (WebGroup.java:304) (WSWebContainer.java : 1662) com.ibm.ws.webcontainer.channel.WCChannelLink.ready (WCChannelLink.java:195에서) com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination에서 (HttpInboundLink.java : 459) a t com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest (HttpInboundLink.java:526) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest (HttpInboundLink.java : com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted에서 com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete (HttpICLReadCallback.java:87) 에서 312) (AioReadCompletionListener 된 .java 165) com.ibm.io.async.AbstractAsyncFuture.invokeCallback (AbstractAsyncFuture.java:217) com.ibm.io.async.AsyncChannelFuture.fireCompletionActions (AsyncChannelFuture.java:161) 에서의 COM의 .ibm.io.async.AsyncFuture.완료 (AsyncFuture.java:138) at com.ibm.io.async.ResultHandler.complete (ResultHandler.java:204) at com.ibm.io.async.ResultHandler.runEventProcessingLoop (ResultHandler.java:775) at com.ibm.io.async.ResultHandler $ 2.run (ResultHandler.java:905) at com.ibm.ws.util.ThreadPool $ Worker.run (ThreadPool.java:1815) 원인 : com.ibm.ws .jsp.webcontainerext.JSPErrorReport : JSPG0036E는 : com.ibm.ws에서 com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.findWrapper (AbstractJSPExtensionProcessor.java:447) 에서 찾기 자원 /HtmlDefaultRepresentation/defaultHtmlEntry.jsp에 실패 .jsp.webcontainerext.AbstractJSPExtensionProcessor.getServletWrapper (AbstractJSPExtensionProcessor.java:338) 에서 com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch (WebAppRequestDispatcher.java:1384) 에서 com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters (WebAppFilterManager.java:965) 에서닷컴 .htmlProvider.include (HtmlProvider.java:75) . java.io.FileNotFoundException : .. (58)는 더에 의한 JSPG0036E을 : ... 자원 /HtmlDefaultRepresentation/defaultHtmlEntry.jsp을 찾는 데 실패보다 64

,

런타임 환경은 WebSphere 서버 8.5입니다.

잘못된 공급자가 처음 선택되었을 때 헤더에 명시 적으로 JSON을 응답으로 사용해야한다고 나와 있습니다. 클라이언트 측 또한 implicite 상태에서 전송 된 HTTP 헤더가 JSON이 예상된다 :

하는 텍스트/HTML을 적용, 응용 프로그램/XHTML + XML, 응용 프로그램/XML, Q = 0.9, /, Q = 0.8 가 용납 인코딩 gzip을, 폐의 수락 - 언어 엉, 드, Q = 0.5 콘텐츠 유형 응용 프로그램/JSON

그 문제의 원인과 방법을 방지하는 방법은 무엇

?

답변

1

로그에서 이전 오류를 확인하십시오.

응답을 생성하는 동안 예외가 발생하면 대체 공급자 (이 경우 - HtmlProvider)가 사용됩니다.

구성 문제 또는 누락 된 종속성으로 인해 예외가 발생할 수 있습니다.

+0

라이브러리 jackson-module-jaxb-annotations가 누락되었습니다. –