问题描述
我正在尝试从我的 EJB 类发送推送通知:
@Stateless
public class SendEmailNotificationReminderServiceBean implements SendEmailNotificationReminderService {
@Inject
private BeanManager beanManager;
private void sendNotification {
// Push Nachricht
PushEvent event = new PushEvent("sendNotification",1);
beanManager.fireEvent(event);
}
}
这是我的插座:
@Named
@ApplicationScoped
public class NotificationSocket implements Serializable {
private static final long serialVersionUID = 7615791377170410627L;
@Inject
@Push(channel = "notificationChannel")
private PushContext push;
/**
* Push Notification
*
* @param recipientUser
*/
public void pushUser(@Observes PushEvent event) {
if (event == null)
return;
Set<Future<Void>> sent = push.send(event.getMessage(),event.getUserId());
}
}
我的对象:
public class PushEvent {
private String message;
private Long userId;
public PushEvent(String message) {
super();
this.message = message;
}
//////////////
public PushEvent(String message,Long userId) {
super();
this.message = message;
this.userId = userId;
}
public String getMessage() {
return message;
}
public Long getUserId() {
return userId;
}
}
我的 JSF 页面:
<o:socket channel="notificationChannel"
user="#{loginBean.currentEmployee.id}" scope="session"
onmessage="notificationLoadScript">
</o:socket>
<h:form id="notificationPushTopbarForm">
<p:remoteCommand name="notificationLoadScript"
actionListener="#{topbarMenuController.loadNotification()}"
oncomplete="changeTitleForNotification(#{topbarMenuController.numberOfNewNotificationAvailable})"
update=":notificationLink,:notificationSidebarForm" global="false" />
</h:form>
我想做的是:
我没有收到错误消息,但 JSF 组件也没有更新(p:remoteCommand 调用)。知道如何解决这个问题吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)