diff --git a/impl/src/main/java/org/jboss/weld/el/WeldValueExpression.java b/impl/src/main/java/org/jboss/weld/el/WeldValueExpression.java index 34395eb23ee..6ff09d3b974 100644 --- a/impl/src/main/java/org/jboss/weld/el/WeldValueExpression.java +++ b/impl/src/main/java/org/jboss/weld/el/WeldValueExpression.java @@ -25,7 +25,7 @@ /** * @author pmuir - * + * @author alesj */ public class WeldValueExpression extends ForwardingValueExpression { @@ -83,6 +83,25 @@ public void setValue(ELContext context, Object value) } } + @Override + public boolean isReadOnly(ELContext context) + { + ELCreationalContextStack store = getCreationalContextStore(context); + try + { + store.push(new CreationalContextCallable()); + return delegate().isReadOnly(context); + } + finally + { + CreationalContextCallable callable = store.pop(); + if (callable.exists()) + { + callable.get().release(); + } + } + } + @SuppressWarnings("rawtypes") @Override public Class getType(ELContext context)