Javascript JSF 2.3 onmessage侦听器函数未启动
由于PrimeFaces已经不推荐使用Push,我正试图让JSF2.3在GlassFish 5上运行。但我很难激发我的听众 我有以下代码:Javascript JSF 2.3 onmessage侦听器函数未启动,javascript,jsf,java-websocket,java-ee-8,Javascript,Jsf,Java Websocket,Java Ee 8,由于PrimeFaces已经不推荐使用Push,我正试图让JSF2.3在GlassFish 5上运行。但我很难激发我的听众 我有以下代码: @Inject @Push(channel = "notifyjsf") private PushContext push; push.send("price"); logger.log(Level.INFO, "price push"); 我的问题是启动通知功能。如果我按如下方式设置消息,它根本不会启动: <f:websocket channel
@Inject
@Push(channel = "notifyjsf")
private PushContext push;
push.send("price");
logger.log(Level.INFO, "price push");
我的问题是启动通知功能。如果我按如下方式设置消息,它根本不会启动:
<f:websocket channel="notifyjsf" onmessage="notifyListener" />
谢谢,
Zobbo从这里开始阅读:包含与您的案例不同的相关信息。(不要总是相信你的IDE,但只要运行它)谢谢,我看过文档,如果我使用正确的事件侦听器(没有onmessage参数),我真的看不出我做错了什么,例如,它至少还没有启动。在添加onopen和onclose侦听器之后,onopen被解雇了,但不是onclose,也不是Message,我现在真的可以工作了。我认为这是一个时间问题。后来我一推它就成功了(在初始化之后)。感谢您指向它帮助我调试的文档。很好,它可以工作。也许用代码创建一个答案是好的,特别是推送的新位置,并改进问题,以便让其他人清楚区别
<f:websocket channel="notifyjsf" onmessage="notifyListener(message,channel,event)" />
"VM36:1 Uncaught ReferenceError: message is not defined
at eval (eval at <anonymous> (jquery.js.xhtml?ln=primefaces&v=6.1:14), <anonymous>:1:172)
function notifyListener(message, channel, event) {
console.log("notifyListener message: " + message);
console.log("notifyListener channel: " + channel);
console.log("notifyListener event: " + event);
console.log("stocks: notifyListener");
}