Método funciona apenas 1 vez em JSF

Bem galera, eu aqui de novo … resolvi um problema e apareceu outro …
Bão … seguinte, tenho um botão em minha tela que esta executando apenas 1 vez a chamada, se tendo efetuar uma nova chamada ele não funciona, porém se eu for em outro campo e fizer a chada via Ajax é executado normalmente …Escopo View

Método:

<p:commandButton value="Próximo"   ajax="false" update="formProduto" actionListener="#{produtoBean.buscaP}" icon="ui-icon-arrowthick-1-e"/>

Code:

[code]public Produto buscaP(ActionEvent event){
try {

		if (produto.getCodigo() != null){
			if (produto.getCodigo() >= 1){
	
				ProdutoRepository pr = new ProdutoRepository(getEntityManager());
				setProduto(pr.produto(getProduto().getCodigo() + 1));
				
				if (getProduto().getCodigo() == null || getProduto().getCodigo() == 0){
					produto.setCodigo(produto.getCodigo() - 1);
					FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(
							FacesMessage.SEVERITY_INFO,"", "PRODUTO NÃO CADASTRADO"));
				}
				else{
					
				}
			}	
		}
	} catch (NullPointerException e) {
		e.printStackTrace();
	}
	return produto;
}[/code]

Esse sempre funciona:

<p:inputText value="#{produtoBean.produto.codigo}" size="6"> <p:ajax event="blur" update="formProduto" listener="#{produtoBean.buscar}"/> </p:inputText>

[code]public Produto buscar(){
try {
if (getProduto().getCodigo() != null || getProduto().getCodigo() >0){

			ProdutoRepository pr = new ProdutoRepository(getEntityManager());
			setProduto(pr.produto(getProduto().getCodigo()));
			
			if (getProduto().getCodigo() == null || getProduto().getCodigo() == 0){
				produto = new Produto();
				FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(
						FacesMessage.SEVERITY_INFO,"", "PRODUTO NÃO CADASTRADO"));
			}
			else{
				
			}
		}
	} catch (NullPointerException e) {
		e.printStackTrace();
	}
	
	return produto;
}[/code]

estou com o mesmo problema… :frowning:

Estranho, tenho a mesma rotina em outro projeto e funciona normalmente …

eu tbm tenho praticamente a mesma coisa em outra parte do projeto e funciona normal…

Tenta assim:

<p:commandButton value="Próximo"   ajax="false" update="formProduto" actionListener="#{produtoBean.buscaP}" icon="ui-icon-arrowthick-1-e" immediate="true"/>

pode estar ocorrendo algum problema de validação/conversão…da uma olhada no log para ver se ta saindo algo.

Porque o ajax = false ?
Não é uma requisição ajax ?

Verdade, vou testar com o immediate.
Então, o botão não executa o Ajax … em Ajax é quando se esta dentro do text …