Invalidate() method wont refresh web element in MVC ZK
<p>I have this issue regarding refresh some elements in my zul page. Im currently using MVC with ZK not MVVM. I already used elementId.invalidate(), but it seems the method did not work. Can someone please help me how to do it in MVC ZK?</p>

<p>Here's my zul page</p>

<pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;zk xmlns="http://www.zkoss.org/2005/zul"&gt;
&lt;window border="none" apply="com.dorne.got.ui.far.there.FooComposer"&gt;
    &lt;groupbox mold="3d" closable="false"&gt;
        &lt;caption
            label="${labels.generate.foo.forward}" /&gt;
            &lt;grid fixedLayout="true"&gt;
                &lt;columns&gt;
                    &lt;column width="20%" /&gt;
                    &lt;column width="80%" /&gt;
                &lt;/columns&gt;
                &lt;rows&gt;                      
...
...
                    &lt;row&gt;
                        &lt;div&gt;
                            &lt;label
                                value="${labels.foo.fr.Name}" /&gt;
                        &lt;/div&gt;
                        &lt;div&gt;
                            &lt;!-- constraint="/.+\.+|/: Please enter a valid Name" --&gt;
                            &lt;textbox id="txtName" width="10%" /&gt;
                            &lt;label id="lblErrorName"
                                style="color:red" /&gt;
                        &lt;/div&gt;
                    &lt;/row&gt;                      
                &lt;/rows&gt;
            &lt;/grid&gt;
        &lt;div align="center"&gt;
            &lt;separator /&gt;
            &lt;button id="btnSubmit"
                label="${labels.common.button.generate}" /&gt;
            &lt;button id="btnClose"
                label="${labels.common.button.cancel}" /&gt;
            &lt;separator /&gt;
        &lt;/div&gt;
    &lt;/groupbox&gt;
&lt;/window&gt;
</code></pre>

<p></p>

<p>And here's my MVC zk composer</p>

<pre><code>public class RefreshLabelNameComposer extends WindowComposer {


@Wire
private Label lblErrorName

 @Override
public void doAfterCompose(Window comp) throws Exception {
    //skip this code
}

public longProcess() {
//some long proccess
}

@Listen("onClick = #btnSubmit")
public void btnSubmitClick() {
    lblErrorName.setValue("");
    lblErrorName.invalidate();
    longProccess();
}
}
</code></pre>

<p>Let assume after some proccess, the lblErrorName value is not empty.
After I push button Submit, just before long proccess is running, the lblErrorName wont refresh its value to "". I want just before the long proccess running, the lblErrorName is refreshed to empty string, so the user wont seeing the errors while running longProccess method.  I think the problem lie on how invalidate() method work with MVC ZK, but I'm not sure whats the prob. 
Can someone please help how to fix it? Big thanks</p>

<p>Edit: I'm using ZK 7</p>

<p>Edit 2: I already tried </p>

<pre><code>lblErrorName.setVisible(!lblErroName.isVisible());
lblErrorName.setValue("");
lblErrorName.setVisible(!lblErroName.isVisible());
</code></pre>

<p>but, still the element label lblErrorName wont refresh to empty string</p>