NullPointerException при использовании CXF SSE от @Context SseEventSink - PullRequest
0 голосов
/ 21 февраля 2019

Я пытаюсь использовать функцию JAX-RS SSE (отправленное сервером событие) в Tomcat 8.0.45 и Apache 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)
    ......

Спасибо за помощь!

...