-
New Feature
-
Resolution: Unresolved
-
Normal
-
None
-
6.0.1
-
zk6.0.1+spring3.1.1+hibernate3.6.8
as showed in http://www.zkoss.org/forum/listComment/5322-ZK-and-JavaRebel
I'm trying using JavaRebel with ZK and context is reloaded always.but when i try setting system property 'org.zkoss.zel.BeanELResolver.CACHE_SIZE' to '0' ,as is blow in zk.xml:
<system-property>
<name>org.zkoss.zel.BeanELResolver.CACHE_SIZE</name>
<value>0</value>
</system-property>
,it has no effect ,i look into the source code of BeanELResolver,find the following code:
public ConcurrentCache(int size) {
this.size = size;
this.eden = new ConcurrentHashMap<K,V>(size);
this.longterm = new WeakHashMap<K,V>(size);
}
,it seem no use to set size to 0 for disabling the cache,when i set 'org.zkoss.zel.BeanELResolver.CACHE_SIZE' to -1, the cosole show following exception when i visit the zul page:
java.lang.IllegalArgumentException
at java.util.concurrent.ConcurrentHashMap.<init>(Unknown Source)
at java.util.concurrent.ConcurrentHashMap.<init>(Unknown Source)
at org.zkoss.zel.BeanELResolver$ConcurrentCache.<init>(BeanELResolver.java:411)
at org.zkoss.zel.BeanELResolver.<init>(BeanELResolver.java:63)
at org.zkoss.xel.zel.XelELResolver.<clinit>(XelELResolver.java:49)
at org.zkoss.bind.xel.zel.BindELContext.newELResolver(BindELContext.java:58)
at org.zkoss.xel.zel.XelELContext.<init>(XelELContext.java:47)
at org.zkoss.bind.xel.zel.BindELContext.<init>(BindELContext.java:54)
at org.zkoss.bind.xel.BindXelFactory.newELContext(BindXelFactory.java:36)
at org.zkoss.bind.xel.BindXelFactory.parseExpression(BindXelFactory.java:30)
at org.zkoss.bind.impl.BindEvaluatorXImpl.parseExpressionX(BindEvaluatorXImpl.java:69)
at org.zkoss.bind.impl.BindEvaluatorXUtil.eval(BindEvaluatorXUtil.java:54)
at org.zkoss.bind.BindComposer.initViewModel(BindComposer.java:146)
at org.zkoss.bind.BindComposer.doAfterCompose(BindComposer.java:116)
at org.zkoss.zk.ui.impl.UiEngineImpl.doAfterCompose(UiEngineImpl.java:526)
at org.zkoss.zk.ui.impl.UiEngineImpl.execCreateChild0(UiEngineImpl.java:821)
at org.zkoss.zk.ui.impl.UiEngineImpl.execCreateChild(UiEngineImpl.java:767)
at org.zkoss.zk.ui.impl.UiEngineImpl.execCreate0(UiEngineImpl.java:676)
at org.zkoss.zk.ui.impl.UiEngineImpl.execCreateChild(UiEngineImpl.java:738)
at org.zkoss.zk.ui.impl.UiEngineImpl.execCreate0(UiEngineImpl.java:698)
at org.zkoss.zk.ui.impl.UiEngineImpl.execCreate(UiEngineImpl.java:640)
at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage0(UiEngineImpl.java:391)
i post a request for disabling mvvm composer class method cache.