think 1.5.2 doesn't deploy the exact same way so it should be configured by
endpoint instead of application class (IIRC, no more sure :s)

*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/4/11 Julien Eluard <[email protected]>

> I can confirm it works as expected with latest 1.6 SNAPSHOT. I also tried
> with 1.5.2 (which has apparently been released to maven central?) and it
> does not work with a small variation: I now get following message
> No message body writer has been found for response class SingletonList.
>
> Thanks again Romain for the help!
> Julien
>
>
> 2013/4/11 Romain Manni-Bucau <[email protected]>
>
> > yes, as usually that's here
> >
> >
> https://repository.apache.org/content/groups/snapshots/org/apache/openejb/apache-tomee/1.6.0-SNAPSHOT/
> >
> > *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/4/11 Julien Eluard <[email protected]>
> >
> > > Ah ok I will give it a try. Are there any JAX-RS distribution available
> > for
> > > the snapshot?
> > >
> > >
> > > 2013/4/11 Romain Manni-Bucau <[email protected]>
> > >
> > > > works fine on the snapshot
> > > >
> > > > *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/4/11 Julien Eluard <[email protected]>
> > > >
> > > > > Still the same issue.
> > > > >
> > > > >
> > > > > 2013/4/11 Romain Manni-Bucau <[email protected]>
> > > > >
> > > > > > try https://gist.github.com/rmannibucau/a4371909c0bc07e2383d
> > > > > >
> > > > > > *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/4/11 Julien Eluard <[email protected]>
> > > > > >
> > > > > > > >the point is by default it is jaxb serialization which is used
> > > (not
> > > > > with
> > > > > > > jackson)
> > > > > > > org.apache.cxf.jaxrs.provider.json.JSONProvider relies on JAXB
> > and
> > > > thus
> > > > > > > expects XmlRootElement right? Ok I don't want that.
> > > > > > >
> > > > > > > So I have to switch to something
> > > > > > > like com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider. Now
> > even
> > > > > after
> > > > > > > having added Jackson jars
> > > > > > > (jackson-annotations, jackson-core, jackson-databind
> > > > > > > and jackson-jaxrs-json-provider) in tomee/lib I still get the
> > same
> > > > > > message.
> > > > > > >
> > > > > > > Even trying with a random string as Service/class-name does not
> > > > trigger
> > > > > > any
> > > > > > > error/exception . How can I get come more info? It makes the
> > whole
> > > > > thing
> > > > > > > really hard to debug as I essentially have no idea what is
> wrong:
> > > my
> > > > > conf
> > > > > > > file, it's location, content.. Whole configuration process
> isn't
> > > > > exactly
> > > > > > > straightforward.
> > > > > > >
> > > > > > > As a side note I really appreciate tomee and the hard work you
> > guys
> > > > put
> > > > > > > into it!
> > > > > > >
> > > > > > > Thanks!
> > > > > > >
> > > > > > >
> > > > > > > 2013/4/11 Romain Manni-Bucau <[email protected]>
> > > > > > >
> > > > > > > > your conf is read, the point is by default it is jaxb
> > > serialization
> > > > > > which
> > > > > > > > is used (not with jackson) so
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/jeluard/tomee-rest-json/blob/master/src/main/java/Service.java
> > > > > > > > can't
> > > > > > > > return a list (needs to be wrapped with a jaxb object)
> > > > > > > >
> > > > > > > > *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/4/11 Julien Eluard <[email protected]>
> > > > > > > >
> > > > > > > > > Hi,
> > > > > > > > >
> > > > > > > > > I uploaded a case reproducing what I see here:
> > > > > > > > > https://github.com/jeluard/tomee-rest-json
> > > > > > > > >
> > > > > > > > > If someone could take a look at it that would be greatly
> > > > > appreciated.
> > > > > > > > >
> > > > > > > > > Thanks!
> > > > > > > > > Julien
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > 2013/4/11 Julien Eluard <[email protected]>
> > > > > > > > >
> > > > > > > > > > Hi,
> > > > > > > > > >
> > > > > > > > > > well not sure why but I can't get it to work. Tried
> various
> > > > > > > combination
> > > > > > > > > > but no luck. At this stage I am very close to JeBlog.
> > > > > > > > > > Is there some configuration to be done at tomee level?
> I'm
> > > > using
> > > > > > > > default
> > > > > > > > > > JAX-RS 1.5.1 edition.
> > > > > > > > > >
> > > > > > > > > > Actually I am wondering if my openejb-jar.xml file is
> read
> > at
> > > > all
> > > > > > > > (using
> > > > > > > > > > non existing class for cxf.jaxrs.providers values
> silently
> > > > fail).
> > > > > > > > > > Can I enable more logging there somehow?
> > > > > > > > > >
> > > > > > > > > > Also I tried to package JeBlog but compilation fails: it
> > > looks
> > > > > like
> > > > > > > > > latest
> > > > > > > > > > deltaspike snapsshot has a different API.
> > > > > > > > > >
> > > > > > > > > > Thanks!
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > 2013/4/11 Romain Manni-Bucau <[email protected]>
> > > > > > > > > >
> > > > > > > > > >> just do it explicitely, the auto discovering works fine
> > when
> > > > you
> > > > > > > don't
> > > > > > > > > use
> > > > > > > > > >> default media types but for defaults you will probably
> get
> > > > some
> > > > > > > > conflict
> > > > > > > > > >> between jackson and cxf.
> > > > > > > > > >>
> > > > > > > > > >> here is a sample:
> > > > > > > > > >>
> > > > > > > > > >>
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/rmannibucau/JeBlog/blob/rest/src/main/webapp/WEB-INF/openejb-jar.xml
> > > > > > > > > >>  and
> > > > > > > > > >>
> > > > > > > > > >>
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/rmannibucau/JeBlog/blob/rest/src/main/webapp/WEB-INF/resources.xml
> > > > > > > > > >>
> > > > > > > > > >> it uses cxf json provider but basically replace it by
> your
> > > own
> > > > > one
> > > > > > > > (and
> > > > > > > > > >> for
> > > > > > > > > >> attributes ensure you have setters for them) and it
> should
> > > > work
> > > > > > > > > >>
> > > > > > > > > >> *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/4/11 Julien Eluard <[email protected]>
> > > > > > > > > >>
> > > > > > > > > >> > Hi Romain,
> > > > > > > > > >> >
> > > > > > > > > >> > thanks for the answer.
> > > > > > > > > >> >
> > > > > > > > > >> > Do you have a little more pointer? I tried some things
> > in
> > > > that
> > > > > > > > > direction
> > > > > > > > > >> > but couldn't get anything working. Not even meaningful
> > > logs
> > > > > > and/or
> > > > > > > > > >> > exception.
> > > > > > > > > >> > I guess in my case using Jackson would be the best
> > option.
> > > > How
> > > > > > > can I
> > > > > > > > > >> have
> > > > > > > > > >> > the Jackson MessageBodyReader/Writer discovered (they
> > are
> > > > > > already
> > > > > > > > > >> defined
> > > > > > > > > >> > as services)? Isn't what
> > > 'openejb.jaxrs.providers.auto=true'
> > > > > is
> > > > > > > > > >> supposed to
> > > > > > > > > >> > do?
> > > > > > > > > >> >
> > > > > > > > > >> > I am willing to spend some time improving one of tomee
> > > rest
> > > > > > > example.
> > > > > > > > > >> Looks
> > > > > > > > > >> > like it's such a basic use case it should be dead easy
> > to
> > > > get
> > > > > > > > working.
> > > > > > > > > >> >
> > > > > > > > > >> > Julien
> > > > > > > > > >> >
> > > > > > > > > >> >
> > > > > > > > > >> > 2013/4/11 Romain Manni-Bucau <[email protected]>
> > > > > > > > > >> >
> > > > > > > > > >> > > Well, there isnt a unique solution. Basically it
> works
> > > out
> > > > > of
> > > > > > > the
> > > > > > > > > box
> > > > > > > > > >> > using
> > > > > > > > > >> > > jaxb annotations on your pojo.
> > > > > > > > > >> > >
> > > > > > > > > >> > > That said here is the best compromise to get a good
> > > > control:
> > > > > > > > > >> > > * create a custom @Provider delegating to jackson
> > (added
> > > > in
> > > > > > the
> > > > > > > > > >> webapp)
> > > > > > > > > >> > > * configure it in openejb-jar.xml
> > > > > > > > > >> > >
> > > > > > > > > >> > > Thats the easiest provider to use and clearly the
> > > fastest
> > > > > > > > > >> > > Le 11 avr. 2013 02:20, "Julien Eluard" <
> > > > > > [email protected]
> > > > > > > >
> > > > > > > > a
> > > > > > > > > >> > écrit :
> > > > > > > > > >> > >
> > > > > > > > > >> > > > Hi,
> > > > > > > > > >> > > >
> > > > > > > > > >> > > > when trying to send a List of POJOs (as
> > > > application/json)
> > > > > > via
> > > > > > > > > >> JAX-RS I
> > > > > > > > > >> > > get
> > > > > > > > > >> > > > the infamous:
> > > > > > > > > >> > > > WARNING: No message body writer has been found for
> > > > > response
> > > > > > > > class
> > > > > > > > > >> List.
> > > > > > > > > >> > > >
> > > > > > > > > >> > > > Googling around I can find several suggestions to
> > fix
> > > > that
> > > > > > > > > (setting
> > > > > > > > > >> > some
> > > > > > > > > >> > > > Java properties, using Jackson, introducing an
> > > > > > > openejb-jar.xml).
> > > > > > > > > >> None
> > > > > > > > > >> > > work
> > > > > > > > > >> > > > and it looks like the solution evolved over time.
> > > > > > > > > >> > > > What is the correct way to solve this with Tomee
> > 1.5.1
> > > > > > JAX-RS
> > > > > > > > > >> edition?
> > > > > > > > > >> > > > Although is there a good reason this cannot be
> > > supported
> > > > > > > > > >> > out-of-the-box?
> > > > > > > > > >> > > > That's a little frustrating..
> > > > > > > > > >> > > >
> > > > > > > > > >> > > > I can make things kind of work using
> XMLRootElement
> > on
> > > > my
> > > > > > POJO
> > > > > > > > but
> > > > > > > > > >> > then I
> > > > > > > > > >> > > > have a extra JSON level whose name is derived from
> > my
> > > > > Class
> > > > > > > > name.
> > > > > > > > > >> Kind
> > > > > > > > > >> > of
> > > > > > > > > >> > > > ugly.
> > > > > > > > > >> > > >
> > > > > > > > > >> > > > Thanks!
> > > > > > > > > >> > > > Julien
> > > > > > > > > >> > > >
> > > > > > > > > >> > >
> > > > > > > > > >> >
> > > > > > > > > >>
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to