Configuration
ZK have two implementations: PollingServerPush and CometServerPush. As their name suggest, they implement the Client-Polling and Comet (aka., long-polling) server pushes.
The default implementation depends on which ZK edition you use. If ZK CE and PE, PollingServerPush will be used. If ZK EE, CometServerPush will be used. You configure ZK to use the one you prefer, even to use a custom server push.
Choose an Implementation
Client-polling is based on a timer that peeks the server continuously to see if any data to be pushed to the client, while Comet establishes a permanent connection for instant push. Client-polling will introduce more traffic due to the continuous peeks, but Comet will consume the network connections that a server allows.
Page-level Configuration
You could configure a particular ZK page to use a particular implementation by use of DesktopCtrl.enableServerPush(ServerPush). For example,
((DesktopCtrl)desktop).enableServerPush(
new org.zkoss.zk.ui.impl.PollingServerPush(2000,5000,-1));
Application-level Configuration
If you would like to change the default server push for the whole application, you could use the the server-push-class element as follows.
<device-config>
<device-type>ajax</device-type>
<server-push-class>org.zkoss.zkex.ui.impl.PollingServerPush</server-push-class>
</device-config>
where you could specify any implementation that implements ServerPush.
Customize Client-Polling
Version History
Version | Date | Content |
---|---|---|