Problema com listagem

Olá pessoal, estou com um problema relativamente simples, porém quebrando a cabeça não consegui realizar uma pesquisa:
Bem, a ideia é simples, a partir de uma String Nome () obter e passá-la para uma listagem.
O método, retornaria uma lista e em seguida pudesse ser obtida numa outra página, embora, por alguma incrível razão obtenho uma excessão de que o método não existe:

Isto está declarado em uma interface DAO:

Isto está declarado em uma classe chamada DAOHibernate:

@SuppressWarnings("unchecked") public List<Empresa> buscarPorNome(String nome) { Query query = this.session.createQuery("select e from Empresa e where e.nome LIKE = :nome%"); query.setString("nome", nome); return query.list(); }

É tratado assim em uma classe de Regra de Negócio

[code] public List<Empresa> buscaPorNome(String nome) {
return this.empresaDAO.buscarPorNome(nome);

}[/code]

e obtida assim em um ManagedBean:

public List&lt;Empresa&gt; getBuscarPorNome() { String nome = empresa.getNome(); if (this.listagem == null) { EmpresaRN empresaRN = new EmpresaRN(); this.listagem = empresaRN.buscaPorNome(nome); } return this.listagem; }

Tento obter assim na página:

&lt;div id="campos"&gt; &lt;p:inputText value="#{empresaBean.empresa.nome}" style="width: 600px;height: 24px; font-size:15px;"&gt; &lt;/p:inputText&gt; &lt;/div&gt; &lt;div id="botaopesq"&gt; &lt;h:commandLink action="#{empresaBean.buscarPorNome}" title="Pesquisar"&gt; &lt;h:graphicImage library="images" name="botao.png" width="118" height="27" style="border:0" /&gt; &lt;f:setPropertyActionListener target="#{empresaBean.empresa}" value="#{nome}" /&gt; &lt;f:setPropertyActionListener target="#{empresaBean.destinoSalvar}" value="/publico/pesquisa"&gt;&lt;/f:setPropertyActionListener&gt; &lt;/h:commandLink&gt;

a Excessão:

métodos no commandLink devem retornar apenas “String” e não uma List.

Essa string de retorno é na verdade a action que corresponde a próxima página que será chamada(outra página ou ela mesma).

Falows.

Carlos, obrigadãol, consegui resolver o problema retirando um immediate = true.
Mas estou com outro agora, se puder me ajudar, te agradeço muito.

http://www.guj.com.br/java/275414-problema-com-auto-complete-primefaces#1447992