[ https://issues.apache.org/jira/browse/CXF-2626?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12802355#action_12802355 ]
Sergey Beryozkin commented on CXF-2626: --------------------------------------- > Using org.apache.cxf.jaxrs.provider.XMLBeansElementProvider as a > jaxrs:provider works like a charm, thanks Excellent, thanks for confirming it. Please test XMLBeansElementProvider, it was contributed awhile back, we can add some more properties to it if needed. Example, the schema you register above will be ignored by XMLBeansElementProvider, so may be we can update it to do the XMLBeans schema validation. Can XMLBeans validate the data ? If you know how then I can update the provider. > I'll try to make a test case/simpler service reproducing the bug above, but > that will not be for a week or two. ok, no probs, given that XMLBeansElementProvider works, it is not that critical then... cheers, Sergey > xmlbean databinding nullpointer > ------------------------------- > > Key: CXF-2626 > URL: https://issues.apache.org/jira/browse/CXF-2626 > Project: CXF > Issue Type: Bug > Components: JAX-RS, OtherDatabindings > Affects Versions: 2.2.5 > Reporter: Daniel Berg > Priority: Minor > > I ran into this little code in the xmlbeans data binding, that always seems > to end up in a NullpointerException. > I have a simple webservice(as simple as they get) using previously generated > xmlbean from a schema. > The write method gets called with my xmlbean and a valid writer, calls write > with MessagePartInfo as null , and a nullpointer exception occurs. > {code:title=org.apache.cxf.xmlbeans.DataWriterImpl.java} > public void write(Object obj, XMLStreamWriter output) { > write(obj, null, output); > } > > public void write(Object obj, MessagePartInfo part, XMLStreamWriter > output) { > try { > Class<?> typeClass = part.getTypeClass(); > .. snip > {code} > {code:title=stack} > DataWriterImpl.write(Object, Object) line: 56 > DataBindingProvider.writeToWriter(XMLStreamWriter, Object) line: 106 > DataBindingProvider.writeTo(Object, Class<?>, Type, Annotation[], > MediaType, MultivaluedMap<String,Object>, OutputStream) line: 98 > JAXRSOutInterceptor.serializeMessage(Message, Response, > OperationResourceInfo, boolean) line: 232 > JAXRSOutInterceptor.processResponse(Message) line: 137 > JAXRSOutInterceptor.handleMessage(Message) line: 77 > PhaseInterceptorChain.doIntercept(Message) line: 236 > OutgoingChainInterceptor.handleMessage(Message) line: 76 > PhaseInterceptorChain.doIntercept(Message) line: 236 > ChainInitiationObserver.onMessage(Message) line: 109 > ServletDestination.invoke(ServletConfig, ServletContext, > HttpServletRequest, HttpServletResponse) line: 98 > ServletController.invokeDestination(HttpServletRequest, > HttpServletResponse, ServletDestination) line: 394 > ServletController.invoke(HttpServletRequest, HttpServletResponse) line: > 133 > CXFServlet(AbstractCXFServlet).invoke(HttpServletRequest, > HttpServletResponse) line: 142 > CXFServlet(AbstractHTTPServlet).handleRequest(HttpServletRequest, > HttpServletResponse) line: 179 > CXFServlet(AbstractHTTPServlet).doGet(HttpServletRequest, > HttpServletResponse) line: 108 > CXFServlet(HttpServlet).service(HttpServletRequest, > HttpServletResponse) line: 707 > CXFServlet(AbstractHTTPServlet).service(ServletRequest, > ServletResponse) line: 159 > StubSecurityHelper$ServletServiceAction.run() line: 227 > ...snip > {code} > {code:title=jaxrs configuration} > <jaxrs:server id="flightplanRest" address="/flightplanRest"> > <jaxrs:serviceBeans> > <ref bean="flightplanRestServiceBean"/> > </jaxrs:serviceBeans> > > <jaxrs:schemaLocations> > > <jaxrs:schemaLocation>classpath:/domainmodel/Flightplan.xsd</jaxrs:schemaLocation> > </jaxrs:schemaLocations> > <jaxrs:dataBinding> > <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding"/> > </jaxrs:dataBinding> > </jaxrs:server> > {code} -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.