Details
-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0-Alpha1
-
Fix Version/s: 2.0-Alpha3, 2.0.0
-
Component/s: Framework
-
Labels:None
-
Environment:ICEfaces 2.0
Description
The current mechanism of specifying com.icesoft.faces.synchronousUpdate true/false per web application is too coarse: if push interaction is not required during a certain phase of the application, the blocking connection should not be established.
To optimize this, the blocking connection should be established only when needed: only when the current view has been added to a render group and is capable of receiving push updates.
For instance, if PushRender.addCurrentSession() is called prior to page rendering, the bridge must subsequently be configured to initiate the blocking connection for that user.
If a session has been added to a render group, in order to shutdown the blocking connection when not needed, the session will be removed from the render group when all active views have been closed. Therefore, the application must add each view prior to rendering (this is a common application practice since views are typically added independently).
This can be configured:
org.icefaces.push.establish="lazy"|always"|"never" ("lazy" is the default)
With "lazy" initialization, the push connection is established only when a given session or view has been added to a render group. With "always" establishment and "never" establishment, the behavior is the same as synchronousUpdate "false" and "true" respectively.
Issue Links
- is duplicated by
-
ICE-2102 Add granularity to synchronous vs asynchronous modes
- Closed
Activity
Ted Goddard
created issue -
Ted Goddard
made changes -
Field | Original Value | New Value |
---|---|---|
Salesforce Case | [] | |
Fix Version/s | 2.0 [ 10032 ] | |
Assignee | Deryk Sinotte [ deryk.sinotte ] |
Deryk Sinotte
made changes -
Assignee | Deryk Sinotte [ deryk.sinotte ] | Mircea Toma [ mircea.toma ] |
Ken Fyten
made changes -
Fix Version/s | 2.0-Alpha1 [ 10213 ] | |
Fix Version/s | 2.0-Beta [ 10032 ] | |
Affects Version/s | 2.0-Alpha1 [ 10213 ] | |
Affects Version/s | 2.0-Beta [ 10032 ] |
Ken Fyten
made changes -
Fix Version/s | 2.0-Alpha2 [ 10214 ] | |
Fix Version/s | 2.0-Alpha1 [ 10213 ] |
Ken Fyten
made changes -
Salesforce Case | [] | |
Fix Version/s | 2.0-Beta [ 10032 ] | |
Fix Version/s | 2.0-Alpha2 [ 10214 ] | |
Assignee Priority | P2 |
Ken Fyten
made changes -
Salesforce Case | [] | |
Assignee Priority | P2 | P3 |
Deryk Sinotte
made changes -
Ken Fyten
made changes -
Salesforce Case | [] | |
Assignee Priority | P3 | P2 |
Ken Fyten
made changes -
Assignee | Mircea Toma [ mircea.toma ] | Ted Goddard [ ted.goddard ] |
Ted Goddard
made changes -
Assignee | Ted Goddard [ ted.goddard ] | Mircea Toma [ mircea.toma ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #21165 | Tue Apr 06 11:41:36 MDT 2010 | mircea.toma | |
Files Changed | ||||
MODIFY
/icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/application/PushRenderer.java
ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/application/LazyPushManager.java MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/event/BridgeSetup.java MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/SessionBoundServer.java |
Mircea Toma
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Ken Fyten
made changes -
Fix Version/s | 2.0.0 [ 10230 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Assignee Priority | P2 |
This issue might have been fixed by the resolution of
PUSH-30.