Any way to reproduce it?
Not sure the generics help
Le 11 mars 2013 19:51, "Patel, Sanjay" <[email protected]> a écrit :
> I have simple REST service. It returns list of entity. (e.g. Event)
>
> @GET
> @Path("/events")
> @Produces({ "application/json" })
> public List<Event> findEvents() {
> return eventBean.findEvents().getList();
> }
>
>
> It works fine if return type is List<Event>. If I change it to EntityDTO
> (which contains list of Event and int property as shown below), it gives
> below error.
>
> EntityDTO.java
> @XmlRootElement
> @XmlSeeAlso({ Event.class })
> public class EntityDTO<E> {
>
> private List<E> list;
> private int totalCount;
>
> public List<E> getList() {
> return list;
> }
>
> public void setList(List<E> list) {
> this.list = list;
> }
>
> public int getTotalCount() {
> return totalCount;
> }
>
> public void setTotalCount(int totalCount) {
> this.totalCount = totalCount;
> }
>
> }
>
> This is the error I get.
> WARNING: javax.ws.rs.WebApplicationException:
> java.lang.NullPointerException
> at
> org.apache.cxf.jaxrs.provider.json.JSONProvider.writeTo(JSONProvider.java:370)
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.writeTo(JAXRSOutInterceptor.java:298)
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.serializeMessage(JAXRSOutInterceptor.java:258)
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.processResponse(JAXRSOutInterceptor.java:146)
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.handleMessage(JAXRSOutInterceptor.java:84)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
> at
> org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:77)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
> at
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:236)
> at
> org.apache.openejb.server.cxf.rs.CxfRsHttpListener.onMessage(CxfRsHttpListener.java:70)
> at org.apache.openejb.server.rest.RsServlet.service(RsServlet.java:53)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> at
> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
> at
> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
>
>
> What am I missing? Any help would be appreciated.
>
> Thanks.
>