On 27/11/12 16:09, KARR, DAVID wrote:
-----Original Message-----
From: Sergey Beryozkin [mailto:[email protected]]
Sent: Monday, November 26, 2012 11:51 AM
To: [email protected]
Subject: Re: Suddenly getting "class ... nor any of its super class is
known to this context" for existing code

On 26/11/12 19:47, KARR, DAVID wrote:
-----Original Message-----
From: KARR, DAVID
Sent: Monday, November 26, 2012 10:55 AM
To: [email protected]
Subject: Suddenly getting "class ... nor any of its super class is
known to this context" for existing code

Using CXF 2.5.1.

I have an existing REST server that had two controllers with a
handful
of simple GET services.  In the last few days I added a third
controller with a simple service.  I verified that was working, but
I'm
not sure if I tried the two existing services at the time.

Today I made some additional minor changes to the third service and
verified it was ok.  I then discovered that one of the original two
services is now failing with an error like this (the other original
service is fine):

WARNING: javax.xml.bind.JAXBException: class<foo>   nor any of its
super
class is known to this context.

I discovered the need to create a JAXBElementProvider, but this is
only fixing this for XML responses.  If I make it generate JSON, I
still get that error.  I have an instance of
"org.apache.cxf.jaxrs.provider.JSONProvider" specified already.  Is
there something additional I have to add to it to get it to work with
JSON?
I'm assuming you are configuring JAXBElementProvider to treat 'foo' as
JAXBElement or set some other property which can help the provider
marshall it ? If yes, then the same property can be most likely set on
JSONProvider which shares the same common code with JAXBElementProvider

This fixed the problem.  I set both the "extraClass" and "singleJaxbContext" 
properties on the JSONProvider bean.


Thanks for the confirmation David, I was still thinking of trying to reproduce the issue with JSONProvider somehow :-)

Cheers, Sergey

Reply via email to