Я пытаюсь использовать функцию JAX-RS SSE (событие, отправленное сервером) в Томкэт 8.0.45 и Апач CXF 3.2.8, но всегда получаю NullPointerException при отправке запроса GET из браузера через javascript new EventSource(url). Ниже приведен код:
@Path("/sse")
public class SSEService {
@GET
@Path("/test")
@Produces(MediaType.SERVER_SENT_EVENTS)
public void test(@Context Sse sse, @Context SseEventSink eventSink) {
try (SseEventSink sink = eventSink) {
sink.send(sse.newEvent("Hello world"));
}
}
}
Исключение:
Caused by: java.lang.NullPointerExecption
at org.apache.cxf.jaxrs.impl.AsyncResponseImpl.initContinuation(AsyncResponseImpl.java:306)
at org.apache.cxf.jaxrs.impl.AsyncResponseImpl.<init>(AsyncResponseImpl.java:68)
at org.apache.cxf.jaxrs.sse.SseEventSinkContextProvider.createContext(SseEventSinkContextProvider.java:47)
......
Спасибо за вашу помощь!
Смогли ли вы решить эту проблему. Я застрял в той же ошибке.





Это также происходит с последней версией 3.3.0? Если да, пожалуйста, создайте отчет об ошибке здесь: Issues.apache.org/jira/projects/CXF