问题标签 [icepush]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
146 浏览

java - ICEPush:在通知上传递参数

好吧,我了解 ICEPush 的基本功能:客户端订阅,服务器在有新数据时通知订阅者,然后客户端通过 ajax 请求有效负载。这工作得很好,但在某些情况下会出现性能问题。

假设我有一个页面正在跟踪对多个项目的更改。例如,我在名为“ItemChange”的服务器上订阅了一个 ICEPush 事件。每次服务器上的进程更改“Item”实体时,都会触发此“ItemChange”事件。现在假设用户正在跟踪 id 为 2 和 3 的项目,然后服务器上发生更改 id 为 5 的项目的事件。然后服务器将通知“ItemChange”事件,这将使客户端请求一个有效负载,即对它没用,因为它没有跟踪项目 5。这种情况会导致对服务器的大量不必要的调用。

我一直在寻找一种方法来规避这个问题,但我还没有找到任何东西。如果我可以随通知一起发送一个参数,我可以简单地传递更改的项目的 id,因此客户端会知道它是否需要请求有效负载,但似乎没有办法做这个。欢迎任何建议,谢谢。

0 投票
1 回答
189 浏览

android-emulator - 无法在 ICEmobile 项目中发送电子邮件

我刚刚开始研究 ICEsoft。我有一个 ICEmobile 项目,我尝试在其中实现向用户发送通知。我使用 Tomcat 7、ICEmobile 1.1、ICEfaces 3,我的 IDE 是 Eclipse Juno 4.2。以下是一些用于呈现消息的代码片段:

我在 web.xml 中配置了 SMTP 设置:

smtp.host:smtp.gmail.com

smtp.from:myaccount@gmail.com

smtp.端口:465

smtp.user:myaccount@gmail.com

smtp.密码...

smtp.security:SSL

smtp.verify-server-certificate - false

我正在 ICEmobile Container (4.1, 16 + Google APIs) 中的 Android 模拟器上测试所有这些。在那里,我取消选中了 C2DM 通知属性,并在“电子邮件通知”中输入了我的电子邮件地址。

使用该代码,我无法发送电子邮件。我收到这样的错误:

我错过了什么吗?我尝试配置我的 Tomcat,但不知道如何正确配置 - 也许提示就在其中?

在此先感谢,伊琳娜

0 投票
1 回答
192 浏览

jsf - JSF 2.0 (IceFaces 3.2) ApplicationScoped bean、共享数据和 PUSH

我在共享数据和推送方面遇到了一点问题。

我有一个包含三行的表格;这些行根据所选的参考日期而有所不同(每个用户可以选择不同的参考日期,因此它在会话范围内),例如,假设我有:

  • [{1, 'a', "active"}, {2, 'b', "active"}, {3, 'c', "inactive"}] 参考日期为 2013 年 2 月 10 日和
  • [{4, 'a', "inactive"}, {5, 'b', "active"}, {6, 'c', "inactive"}] 参考日期为 2013 年 3 月 13 日。

对象是 {ID, LABEL, STATUS} 类型的三元组。

这些行应该在观看相同参考日期的用户之间共享,例如用户 U1 和 U2 正在观看参考日期为 10-Feb-13 的表格。理想情况下,当 U1 将行 {1, 'a', "active"} 更改为 "inactive" 时,修改会通过推送通知(实际上是 IcePush)传播给也看到它的用户 U2。到目前为止,一切都很好。

当更多用户观看不同的参考日期时会出现我的问题,因为我必须过滤掉不在用户特定参考日期中的行并尝试“释放”不需要的行,因为 bean 是应用程序范围的。

我们最初认为我们可以统计观看特定参考日期的用户,但这就像参考计数垃圾收集一样,我不愿意深入研究,所以我问你,你会怎么做?

顺便说一句,我们认为它应该以这种方式工作,因为我们阅读了本教程。

0 投票
1 回答
535 浏览

vaadin - 在 Vaadin 7 中实现 ICEPush 0.5.5

我正在尝试将 ICEPush 附加组件添加到我的 Vaadin 7 项目中。但是,我找不到任何正确的方法来实现它。

我将此添加到我的 web.xml 文件中。

课程org.vaadin.artur.icepush.ICEPushServlet似乎无法使用。所以我把它改成了org.icepush.servlet.ICEpushServlet.

我使用 Vaadin 7.0.4 和 ICEPush 0.5.5。有人可以指导我如何在 Vaadin 7 中实现 ICEPush。

0 投票
1 回答
762 浏览

java - Vaadin addon ICEpush Error during maven install

I am trying to use Vaadin Addon ICEpush. I have added the following maven snippet to my pom.xml

I have also added the following to pom.xml

But when I maven install from eclipse I am getting the following error:

any suggestions on how to solve this is greatly appreciated

0 投票
1 回答
281 浏览

servlets - 在会话开始时动态添加/删除 servlet 过滤器

我的 JSF 应用程序使用 Active Directory 身份验证模块,即 JCIFS。但是 JCIFS 过滤器阻止了 IE8 的 ICEpush 相关的事情。我想在身份验证后删除 JCIFS 过滤器(如果可能的话)。所以它是基于会话的。我可以在会话统计时应用过滤器吗?在身份验证完成后,我可以将其从当前会话中删除吗?所以它不会在当前会话之后过滤任何请求。

谢谢。

0 投票
1 回答
963 浏览

liferay - Liferay-Portlet 6.1.20 与 ICEFaces 3.3.0:ace:fileEntry 和 icepush

我正在为 Liferay 编写一个 Portlet,并且需要 ace:fileEntry 组件。我已经有一些我终于能够解决的问题。但现在我面临一个我无法理解的问题。

当包含 ace:fileEntry 的视图页是 openend 时,在正负 90 秒后将显示一个弹出窗口,其中显示消息“网络连接中断”,我必须重新加载页面。经过一番研究,我在浏览器控制台中发现了以下几行:

我正在使用以下版本的 Liferay 和 ICEFaces:

  • Liferay 门户 6.1.20-EE-GA2
  • Liferay-Faces-Bridge-Impl 3.1.2-ga3
  • ICEFaces 3.3.0

我的 web.xml 看起来像这样:

我的 face-config.xml 看起来像这样:

ace:fileEntry 所在的 viewpage.xhtml 如下所示:

你们中有人知道如何解决问题或为什么会发生这种情况吗?

0 投票
1 回答
2364 浏览

multithreading - 如何在不导致并发修改异常的情况下刷新其他用户 Vaadin 表?

用例:用户登录并打开显示约会状态的 Vaadin Table 组件。每行都有一个下拉菜单(组合框)来更改状态(已安排、已到达、已审核)。现在多个用户已经在自己的浏览器中打开了这个表,并且不断地更改约会状态。这些更改应反映在所有打开的表上,即如果用户 A 更改约会 appt-1 的状态,它会反映并刷新当前打开的所有表。

以前我们使用 ICE-PUSH 插件应用基于事件的刷新,即如果在 PC-1 上进行了更改(即应用程序实例 a1),我CopyOnWriteArrayListMainApplication类中的静态获取 Vaadin 应用程序的其他实例,并通过该实例调用loadTable函数。之后,我调用 ICEPUSH 将新的更改推送给所有用户。

这工作正常,但在某些情况下,当进行许多频繁更改时,并发修改异常会上升。那么是否有人可以帮助改善这一点?

我在此之后考虑的解决方案是通过其自己的应用程序实例在每 1 分钟内强制而不是连续地刷新表组件。这将查询数据库并使用更新的状态重新加载表容器。为此,我使用 Refresher 插件,但它引发了一个异常,即ConcurrentModificationException,因为有时用户还通过更改表中的组合状态来更改表组件,同时刷新表并在这里引发并发修改异常。所以我正在考虑从用户的角度冻结表格组件,这样用户就不能做任何事情,并且在后台可以轻松地刷新表格。

如果对于这个用例你们有更好的解决方案,请告诉我。我很感激你。

使用 Vaadin 6.8.12、java 1.7、apache Tomcat 7.42

0 投票
2 回答
2937 浏览

jsf - 即使 Ajax 推送处于活动状态,JSF 会话超时和自动重定向到登录页面也不会引起用户的注意

我在我的 JSF 应用程序中使用 Iceface Icepush向客户端发送一些通知。因为这个会话超时永远不会发生在我的应用程序上。

我已指定会话超时 15 分钟。我的要求是,如果 15 分钟内没有实际的客户端交互,服务器应该使会话无效。

我在 iceface 论坛中进行了一些搜索,并在 web.xml 中添加了这个上下文参数

也有人指定在 faces-config.xml 中使用 sessionTimeoutMonitor

但没有任何效果。

0 投票
0 回答
1267 浏览

jsf - org.icepush.util.ExtensionRegistry.getBestExtension 的 java.lang.NullPointerException

我创建了一个新的 IceFace 项目并尝试在本地主机上运行它,但是收到以下错误消息:

这是我的 web.xml

我的 WebContext 下的两个文件是 index.jsp,它重定向到 index.jsf,另一个文件是 index.xhtml,其中包含以下内容:

我尝试将欢迎文件列表切换为

有了这个更改,我的 localhost 不会崩溃,但是我得到一个空白页面(我的 JSF 元素都没有出现)我有一种感觉,因为我的 JSf 标签都没有被解析,但是我真的不知道在哪里问题是,谁能帮帮我?

其他信息:我使用 Eclipse Java EE IDE for Web Developers ICEFACES 3.3.0 Tomcat 3.0

谢谢。


更新:

将我的 web.xml 欢迎文件列表更改为

并将我的 servlet 映射更改为

现在没有崩溃,但是我的 JSF 元素没有出现,我只得到一个空白页。


更新:

Web.xml

我在url-pattern标签内尝试过 .jsf 和 .xhtml 都没有运气

索引.jsp


在让我的页面加载后,它变成空白,所以我右键单击我的页面并查看源代码,这就是我发现的......

任何想法为什么会发生这种情况?