[ https://issues.apache.org/jira/browse/CXF-1858?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Beryozkin resolved CXF-1858. ----------------------------------- Resolution: Fixed Fix Version/s: 2.1.5 2.2 Fixed now > JAXRSOutInterceptor throws NullPointerException for unknown requests when > using exception mapper > ------------------------------------------------------------------------------------------------ > > Key: CXF-1858 > URL: https://issues.apache.org/jira/browse/CXF-1858 > Project: CXF > Issue Type: Bug > Components: REST > Affects Versions: 2.1.2 > Environment: windows XP, jdk1.6.0_07, tomcat 6.0.18 > Reporter: david > Fix For: 2.2, 2.1.5 > > > JAX-RS webservice > When a client requests URL that isnt a valid service endpoint and using an > Exeption mapper to return more detailed error, if you add an entity in the > response the JAXRSOutInterceptor throws a NPE. > java.lang.NullPointerException > at > org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.processResponse(JAXRSOutInterceptor.java:150) > at > org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.handleMessage(JAXRSOutInterceptor.java:61) > ..... > The exception mapper: > public class MyExceptionMapper implements ExceptionMapper<Exception> > { > > private static Logger LOG = > LogUtils.getL7dLogger(MyExceptionMapper.class); > > @Override > public Response toResponse(Exception ex) > { > LOG.logp(Level.WARNING, "MyExceptionMapper", > "toResponse","Caught Exception:", ex); > return > Response.status(503).type("text/html").entity("Myexception error > description").build(); > } > } > If I dont put the entity in the response it works, but with an entity in the > response it causes a NullPointerException. > currently in SVN and 2.1.2 JAXRSOutInterceptor.java line 150 is : > writer.writeTo(responseObj, targetType, invoked.getGenericReturnType(), > invoked != null ? invoked.getAnnotations() : > new Annotation[]{}, > responseType, > response.getMetadata(), > out); > > perhaps should be this : > writer.writeTo(responseObj, targetType, > invoked != null ? > invoked.getGenericReturnType() : null, > invoked != null ? invoked.getAnnotations() : > new Annotation[]{}, > responseType, > response.getMetadata(), > out); -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.