ZK Framework - desabilitar validação do form

Opa galera, boa tarde.

Estou utilizando o ZK Framework.
Preciso desabilitar a validação de constraint do formulário temporariamente, para eu poder limpar os campos, pois hoje na hora que seto null, o campo no formulário é validado e acaba não limpando.
Exemplo:

no .zul tenho a constraint…

no java faria algo do tipo…
// DESABILITA CONSTRAINTS
nome.setText(null);
// HABILITA CONSTRAINTS

Obrigado pela força.

Blz insonix!

Então… dependendo de como vc está fazendo deveria funcionar.

Você está fazendo tudo dentro do script da página ou você está utilizando o padrão MVC da maneira sugeria pela equipe do ZK?

flws

Opa, desculpa por não ter colocado estas informações.
Estou usando MVC.
Segue codigo completo…

userEdit.zul

<?page title="Usuário" contentType="text/html;charset=UTF-8"?>
<zk>
<window title="Usuário" border="normal" width="400px" id="usuarioEdit" apply="compras.usuario.action.UsuarioEditComposer" closable="true">
   	<button label="Novo" id="novo" style="width=70px"/>
   	<button label="Salvar" id="salvar" style="width=70px"/>
   	<button label="Excluir" id="excluir" style="width=70px"/>
   	<button label="Cancelar" id="cancelar" style="width=70px"/>
    <grid>
        <rows>
            <row>Nome: <textbox id="nome" constraint="no empty" maxlength="100" style="width=255px"/></row>
            <row>Email: <textbox id="email" constraint="no empty" maxlength="255" style="width=255px"/></row>
            <row>Login: <textbox id="login" constraint="no empty" maxlength="255"/></row>
            <row>Senha: <textbox id="senha" constraint="no empty" type="password" maxlength="20"/></row>
            <row>Confirma senha: <textbox id="confirmaSenha" constraint="no empty" type="password" maxlength="20"/></row>
            <row>Ativo: <checkbox id="ativo"/></row>
        </rows>
    </grid>
</window>
</zk>

UsuarioEditComposer.java

package compras.usuario.action;

public class UsuarioEditComposer extends GenericForwardComposer {

	private Window usuarioEdit;

	private Textbox login;

	private Textbox senha;

	private Textbox confirmaSenha;

	private Textbox nome;

	private Textbox email;

	private Checkbox ativo;

	...
	...
	...

	private void clearForm() {
		nome.setText(null);
		email.setText(null);
		login.setText(null);
		senha.setText(null);
		confirmaSenha.setText(null);
		ativo.setChecked(true);
	}
}

Obrigado!

Pessoal, boa tarde.

Alguma dica?

Tente o seguinte e vamos ver:

[code]private void clearForm() {
nome.setConstraint(null);
email.setConstraint(null);
login.setConstraint(null);
senha.setConstraint(null);
confirmaSenha.setConstraint(null);

	nome.setText(null);
	email.setText(null);
	login.setText(null);
	senha.setText(null);
	confirmaSenha.setText(null);
	ativo.setChecked(true);

            nome.setConstraint("no empty");
	email.setConstraint("no empty");
	login.setConstraint("no empty");
	senha.setConstraint("no empty");
	confirmaSenha.setConstraint("no empty");

}[/code]

Lembrando que é possivel obter a constraint do objeto assim: nome.getConstraint(), isto talvez ajude a não ter que aplicar os sets de forma hard coded, ou seja, vc salva as constraints, aplica os nulls e depois volta as constraints.

Exemplo:

[code]Constraint nomeConstraint = nome.getConstraint();

nome.setConstraint(null);
nome.setText(null);
nome.setConstraint(nomeConstraint);
[/code]

flws

Opa.

Valeu pela ajuda.
Eu também imaginei isto… mas queria evitar, achei que tinha uma forma explicita pra desabilitar todas constraints, mas não achei nada nos forums e javadoc.

Abraço!

Não sei se vc já achou alguma solução, mas tentou “desviar” o foco() do component, pois é isso que dispara a mensagem.