I was getting same error in both 1.5.1 and 1.6.0 snapshot.

I got it working by adding @XmlAnyElement(lax=true) in EntityDTO.java. I think 
it is required because of generic entity E.

@XmlAnyElement(lax=true)
public List<E> getList() {
        return list;
}

Thanks,
-Sanjay Patel

-----Original Message-----
From: Romain Manni-Bucau [mailto:[email protected]] 
Sent: Tuesday, March 12, 2013 1:35 AM
To: [email protected]
Subject: RE: issue with REST service

I didnt try to be honest...but basically the serialization is the same so the 
issue should be somewhere else Le 12 mars 2013 06:03, "Patel, Sanjay" 
<[email protected]> a écrit :

> Do you get same error on 1.5.1?
>
> -----Original Message-----
> From: Romain Manni-Bucau [mailto:[email protected]]
> Sent: Monday, March 11, 2013 4:52 PM
> To: [email protected]
> Subject: Re: issue with REST service
>
> works fine on the snapshot
>
> i just added to the pom in build section the plugin:
>
> <plugin>
>         <groupId>org.apache.openejb.maven</groupId>
>         <artifactId>tomee-maven-plugin</artifactId>
>         <version>1.6.0-SNAPSHOT</version>
>         <configuration>
>           <tomeeClassifier>jaxrs</tomeeClassifier>
>           <simpleLog>true</simpleLog>
>         </configuration>
>       </plugin>
>
>
> then ran mvn tomee:run
>
> *Romain Manni-Bucau*
> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> *Blog: **http://rmannibucau.wordpress.com/*<
> http://rmannibucau.wordpress.com/>
> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> *Github: https://github.com/rmannibucau*
>
>
>
> 2013/3/11 Patel, Sanjay <[email protected]>
>
> > See attached Project and war.
> >
> > Deploy war to tome 1.5.1.
> >
> > http://localhost:8080/test/secure/rest/one works
> >
> > http://localhost:8080/test/secure/rest/two does not work
> >
> >
> >
> > -----Original Message-----
> > From: Romain Manni-Bucau [mailto:[email protected]]
> > Sent: Monday, March 11, 2013 2:57 PM
> > To: [email protected]
> > Subject: Re: issue with REST service
> >
> > 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(JSONProvid
> > > er
> > > .j
> > > ava:370)
> > > at
> > > org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.writeTo(JAXRS
> > > Ou
> > > tI
> > > nterceptor.java:298)
> > > at
> > > org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.serializeMess
> > > ag
> > > e(
> > > JAXRSOutInterceptor.java:258)
> > > at
> > > org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.processRespon
> > > se
> > > (J
> > > AXRSOutInterceptor.java:146)
> > > at
> > > org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.handleMessage
> > > (J
> > > AX
> > > RSOutInterceptor.java:84)
> > > at
> > > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterc
> > > ep
> > > to
> > > rChain.java:262)
> > > at
> > > org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(
> > > Ou
> > > tg
> > > oingChainInterceptor.java:77)
> > > at
> > > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterc
> > > ep
> > > to
> > > rChain.java:262)
> > > at
> > > org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainIn
> > > it
> > > ia
> > > tionObserver.java:121)
> > > at
> > > org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(Abstr
> > > ac
> > > tH
> > > TTPDestination.java:236)
> > > at
> > > org.apache.openejb.server.cxf.rs.CxfRsHttpListener.onMessage(CxfRs
> > > Ht
> > > tp
> > > Listener.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(A
> > > pp
> > > li
> > > cationFilterChain.java:305)
> > > at
> > > org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicati
> > > on
> > > Fi
> > > lterChain.java:210)
> > > at
> > > org.springframework.security.web.FilterChainProxy$VirtualFilterCha
> > > in
> > > .d
> > > oFilter(FilterChainProxy.java:330)
> > > at
> > > org.springframework.security.web.access.intercept.FilterSecurityIn
> > > te
> > > rc
> > > eptor.invoke(FilterSecurityInterceptor.java:118)
> > > at
> > > org.springframework.security.web.access.intercept.FilterSecurityIn
> > > te
> > > rc
> > > eptor.doFilter(FilterSecurityInterceptor.java:84)
> > >
> > >
> > > What am I missing? Any help would be appreciated.
> > >
> > > Thanks.
> > >
> >
>

Reply via email to