我使用的是:
Glassfish 3.1.2.2 (内部版本5)
Primefaces 3.4.1
Linux上的Firefox 10.0.0.7
Primefaces在Glassfish上工作吗?我这样问是因为当我点击我的*.xhtml页面时,我总是得到ClassNotFoundExceptions。所以我会得到一个not found异常,下载jar并添加一个没有找到的新类。到目前为止我已经拿到了这些罐子。
atmosphere-cometd-1.0.2.jar
atmosphere-runtime-1.0.2.jar
cataline-6.0.20.jar
但我的下一个ClassNotFoundException是org.jboss.servlet.http.HttpEventServlet,因为我使用的是Glassfish,这让我怀疑我这样做是否正确。
我所要做的就是通过primepush将一条消息从MDB发送到一个网页上,并让它在growl中显示为一条通知。
我已经将以下内容添加到我的web.xml中。
<servlet>
<servlet-name>Push Servlet</servlet-name>
<servlet-class>org.primefaces.push.PushServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Push Servlet</servlet-name>
<url-pattern>/primepush/*</url-pattern>
</servlet-mapping>这是在我的*.xhtml中
<script type="text/javascript">
function handleMessage(msg) {
msg.severity = 'info';
grow.show([msg]);
}
</script>
<p:socket channel="/notifications" onMessage="handleMessage"/>这在我的消息驱动bean中。
PushContext pushContext = PushContextFactory.getDefault().getPushContext();
pushContext.push("/notifications", new FacesMessage("Test Summary", "Test Detail"));任何帮助都非常感谢。
发布于 2012-10-19 22:07:28
在glassfish 3.1.2和primefaces 3.4中
我添加了以下代码以使facesmessage示例正常工作。
web.xml:
<servlet>
<servlet-name>Push Servlet</servlet-name>
<servlet-class>org.primefaces.push.PushServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Push Servlet</servlet-name>
<url-pattern>/primepush/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>primefaces.PUSH_SERVER_URL</param-name>
<param-value>http://localhost:8080</param-value>
</context-param>pom.xml (用于maven)
<dependency>
<groupId>org.atmosphere</groupId>
<artifactId>atmosphere-runtime</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>3.4.1</version>
</dependency>https://stackoverflow.com/questions/12966034
复制相似问题