Erro ao chamar a createQuery

Boa tarde, pessoal tenho uma query dentro do meu DAO para verificar se há um cnpj ja cadastrado porém quando ela é chamada no ManagedBean ele me solta um erro
olha so o código

public static void verificaEmpresaCadastrada(String cnpj) throws CampoUniqueException { conectar(); if (em.createQuery("select emp from Empresa as emp where emp.cnpjEmpresa = " + cnpj).getResultList().size() != 0) { desconectar(); throw new CampoUniqueException("O CNPJ informado já está cadastrado."); } desconectar(); }

e olha o erro

INFO: WARNING: FacesMessage(s) have been enqueued, but may not have been displayed. sourceId=cnpjEmpresa[severity=(ERROR 2), summary=(An exception occured while creating a query in EntityManager), detail=(An exception occured while creating a query in EntityManager)]

alguem sabe me dizer o porque?? pois me parece que a query esta OK

mais quando ela é chamada ao invez de inserir o registro por não houver nenhum cnpj cadastrado ai sou redirecionado a um apagina de falha que eu fiz

vlwww

se alguem souber tambem outra maneira de fazer isso

vlwww

public static void verificaEmpresaCadastrada(String cnpj) throws CampoUniqueException {  
      conectar();  
      if (em.createQuery("select emp from Empresa as emp where emp.cnpjEmpresa = :cnpj").setParameter("cnpj", cnpj).getResultList().size() != 0) {  
          desconectar();  
          throw new CampoUniqueException("O CNPJ informado já está cadastrado.");  
      }  
      desconectar();  
  }

Jah tentou assim? Ao invés de concatenar na query…

ainda não tentei parceiro… mais vou tentar assi que chegar em casa… tinha tentando fazer assim mais de outra forma :confused:

obrigado pela dica :smiley:

pois tenho uma outra query que executa tranquila porem sem passar nenhum parametro… apenas um select emp from Empresa as emp

vlw

quando passar parâmetros, dá nome para eles… dessa maneira não tem que se preocupar com aspas simples na query e coisas do gênero…

Abraço!

nossa espero que assim de certo pois ja tava fikano loko com isso
vlw