Why does ICEfaces send dispose-window request on page unload when using view-scoped bean?
- by woflrevo
in our application ICEfaces always sends a dispose-window request just before navigating to another JSF Page. as much as i understand this should not happen when having org.icefaces.lazyWindowScope set to true and there is no window-scoped bean involved in current request. but it happens on each link and makes our UI less responsive. but we don't have any window-scoped bean in our application.
is that a bug in icefaces that the dispose request is sent when using view-scoped beans? Is it possible to disable? ViewScope is defined in JSF not in ICEfaces, it should work without this dispose request i guess...
@ManagedBean(name="viewScopeBean")
@ViewScoped
public class ViewScopeBean {
public void doSomething(){
//
}
}
And here the example jsf:
<ice:form>
<ice:commandButton value="doSomething" action="#{viewScopeBean.doSomething}"/>
<h:link outcome="index" value="Link to same page"/>
</ice:form>
To reproduce do the following using the code above:
open firebug's net tab and activate persist option
click doSomething-Button
click "link to same page"
= dispose-window will be send before navigation
Dispose Request Parameters:
ice.submit.type=ice.dispose.window
ice.window=4guthcbue
javax.faces.ViewState=-8138151632882151449%3A-6709064564386098402
Environment:
ICEfaces-EE 2.0.0.GA
ICEpush-EE 2.0.0.GA
Mojarra 2.1.1
JRockit 1.6.0_22
WebLogic Server 10.3.4.0
ICEfaces Configuration:
org.icefaces.render.auto: true [default]
org.icefaces.autoid: true [default]
org.icefaces.aria.enabled: true [default]
org.icefaces.blockUIOnSubmit: false [default]
org.icefaces.compressDOM: false [default]
org.icefaces.compressResources: true [default]
org.icefaces.connectionLostRedirectURI: /pages/main.jsf
org.icefaces.deltaSubmit: false [default]
org.icefaces.lazyPush: true [default]
org.icefaces.sessionExpiredRedirectURI: /pages/main.jsf
org.icefaces.standardFormSerialization: false [default]
org.icefaces.strictSessionTimeout: false [default]
org.icefaces.windowScopeExpiration = 1000 [default]
org.icefaces.mandatoryResourceConfiguration: null [default]
org.icefaces.uniqueResourceURLs: true [default]
org.icefaces.lazyWindowScope: true [default]
org.icefaces.disableDefaultErrorPopups: false [default]