iris ding created CXF-6388:
------------------------------
Summary: NPE has been swallowed in
org.apache.cxf.jaxrs.impl.AsyncResponseImpl
Key: CXF-6388
URL: https://issues.apache.org/jira/browse/CXF-6388
Project: CXF
Issue Type: Bug
Components: JAX-RS
Affects Versions: 2.7.15, 3.0.4, 3.0.3
Reporter: iris ding
Priority: Minor
According to
https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/container/AsyncResponse.html#register(java.lang.Class):
we need throw NullPointerException - in case the callback class is null in all
register method.
However, CXF swallows the NPE.
The proposed fix is to throw NPE in below method:
public Map<Class<?>, Collection<Class<?>>> register(Class<?> callback,
Class<?>... callbacks)
throws NullPointerException {
try {
Object[] extraCallbacks = new Object[callbacks.length];
for (int i = 0; i < callbacks.length; i++) {
extraCallbacks[i] = callbacks[i].newInstance();
}
return register(callback.newInstance(), extraCallbacks);
}
//proposed change start
catch (NullPointerException e)
{
throw e;
}
//proposed change end
catch (Throwable t) {
return Collections.emptyMap();
}
}
After this, my CTS passed!
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)