【发布时间】:2019-11-08 06:55:19
【问题描述】:
我正在尝试使用 OutboundSseEvent 类在 Java 服务器中设置服务器发送事件。我不确定为什么我的代码不断抛出空指针异常。我使用这些教程作为参考。 https://www.baeldung.com/java-ee-jax-rs-sse 和 https://www.programcreek.com/java-api-examples/index.php?api=javax.ws.rs.sse.OutboundSseEvent
@Path("ssetest")
public class SSETestService extends SecureService {
private Sse sse;
@GET
@Path("/test")
@Produces("text/event-stream")
public void SSETestService(@Context Sse sse, SseEventSink sseEventSink)
throws InterruptedException, IllegalArgumentException {
OutboundSseEvent stringEvent = sse.newEventBuilder()
.name("ping")
.data("hello world").build();
sseEventSink.send(stringEvent);
}
}
在客户端...
testSSE() {
console.log("in testSSE()");
const evtSource = new EventSource(
"http://localhost:8081/api/ssetest/test"
);
evtSource.onmessage = function(event) {
console.log("received message");
console.log("event.data: " + event.data);
};
evtSource.addEventListener("ping", function(event) {
console.log("event.data: " + event.data);
console.log("received ping event");
});
evtSource.onerror = function(err) {
console.error("EventSource failed:", err);
};
}
感谢任何指点。
【问题讨论】:
标签: java nullpointerexception server-sent-events eventsource