I think I might know what might be happening - JAXRS runtime does not recognize the Account as being a standalone method parameter as it's annotated with a JAXWS annotation. On other words, in JAX-RS, providers(by default) are used only when unmarshalling parameters not annotated with JAX-RS annotations, for ex

void foo(@PathParam("id") String id, Account acc);

here the Account will be unmarshalled as expected but because you have

void foo(@WebParam(name="account") Account account);

the runtime mistakenly ignores it....

I'll get back to you on this one...Stay tuned :-)

Sergey


Hi Gabo

Can you please open a JIRA and attach a sample root resource class, Account 
class, and beans.xml.

You're saying that during the non-SOAP invocation a JAXBElementProvider is never invoked - I don't see how it can be happening - it must be at least checked once (isReadbale method must be invoked), given that JAXBElementProvider in the list of default providers. I need to investigate but I honestly don't see how it can be happening.

Can you give me one more favour please and put a breakpoint in org.apache.cxf.interceptor.JAXRSInInterceptor.handleMessage and proceed from there ?

Many thanks, Sergey



Hi Sergey,

Sorry for the late response. I had to leave earlier than usual
yesterday. I added the break points as you have asked. I also added a
breakpoint in the constructor just to make sure it is being created. The
provider is being created, however during the processing of the request,
the said class is never invoked.

The classes AbstractJAXBProvider and JAXBElementProvider are never
invoked during request processing.

Again, my thanks.

Gabo

Sergey Beryozkin wrote:
How is it going ? Did you get a chance to get to hit a breakpoint in
the AbstractJAXBProvider ?

Cheers, Sergey

Hi,


> In org.apache.cxf.jaxrs.provider.JAXBElementProvider class, put a
breakpoint in isReadable() method and see why it returns false. If
it returns true then check why readFrom() fails. I'll try to run
test locally too.

The cxf version I have does not have any isReadable method. I added
breakpoints in methods readFrom and writeTo. The transaction never
passed through the break point (see stacktrace above).

Sorry, can you put a breakpoint in AbstractJAXBProvider.isReadable,
which JAXBElementProvider extends ?

Cheers, Sergey


Again, thanks for your time.

Gabo Manuel


------------------------------------------------------------------------


No virus found in this incoming message.
Checked by AVG - http://www.avg.com
Version: 8.0.173 / Virus Database: 270.8.2/1735 - Release Date: 10/20/2008 2:52 
PM





Reply via email to