Fazendo busca de lista por parâmetro em jsf+hibernate

Pessoal, não estou acertando fazer uma consulta em que traz uma lista com os dados de objetos. Vejam bem, primeiro eu faço uma busca pelo nome do “Experimento”, a tela me devolve um link com os dados desse experimento, atá ai funciona, mas eu coloquei um link nesse nome para chamar um método que recebe o código do Experimento para me devolver uma lista de Tratamentos que estão relacionados a este Experimento. Experimento e Tratamento são classes diferentes.

A mensagem que me é apresentada é a seguinte: Não foi possível encontrar um caso de navegação correspondente na ID de exibição ‘/restrito/experimento/Experimento_busca.xhtml’ para a ação ‘#{experimentoBean.getBuscarPorNome}’ com o resultado ‘Exp1’

Abaixo coloco meus códigos para que vocês possam me ajudar melhor, acho que estou fazendo alguma confusão nessas chamadas de métodos:

JSF

      //Aqui ele faz a busca do Experimento pelo nome, funciona!!!
      <h:form id="buscar">
          <h:panelGrid columns="2">
              <f:facet name="header">
                  <h:outputText value="Buscar experimento"/>
              </f:facet>
              
              <h:outputText value="Nome" />
              <h:inputText size="20" id="nome"
                           value="#{experimentoBean.buscarPorNome}"/>
              
          </h:panelGrid>
          <h:commandButton value="Buscar" action="#{experimentoBean.getBuscarPorNome}"/>
      </h:form>
        
        //Aqui é uma segunda dataTable para ele me apresentar os dados do Experimento localizado e já aproveito e faço o link para buscar os tratamentos que estão relacionados ao Experimento pelo código, porém aqui ele não funciona
        <h:form id="listagem">
            <h:dataTable value="#{experimentoBean.buscarPorNome}" var="experimento" >
                <h:column>
                    <f:facet name="header">Nome</f:facet>
                    <h:commandLink action="#{tratamentoBean.getbuscarPorExperimento}">

                            //Abaixo apresento o nome do experimento localizado, funciona bem! apresenta normalmente!!! Mas já aprece o erro citado acima.
                            #{experimentoBean.selecionado.nome_experimento}
                            
                            //Abaixo injeto o codigo do experimento para buscar os tratamentos relacionados.
                            <f:setPropertyActionListener target="tratamentoBean.tratamento" value="#{experimentoBean.selecionado.cod_experimento}"/>
                        </h:commandLink>
                </h:column>
                
                 <h:column>
                    <f:facet name="header">Quant Tratamento</f:facet>
                    #{experimentoBean.selecionado.quantTratamento}
                        
                 </h:column>
                
                <h:column>
                    <f:facet name="header">Responsavel</f:facet>
                    #{experimentoBean.selecionado.responsavel}
                </h:column>
            </h:dataTable>
        </h:form>

TratamentoBean:

@ManagedBean(name = "tratamentoBean")
@RequestScoped
public class TratamentoBean {
    ...
    private List<Tratamento> buscarPorExperimento;
    private Integer cod_experimento;
    ...
    ...
    public List<Tratamento> getbuscarPorExperimento() {
        TratamentoRN tratamentoRN = new TratamentoRN();
        this.selecionado = (Tratamento) tratamentoRN.buscarPorExperimento(cod_experimento);
        return buscarPorExperimento;
    }
    
    public void setbuscarPorExperimento(List<Tratamento> buscarPorExperimento) {
        this.buscarPorExperimento = buscarPorExperimento;
    }    

TratamentoDAO:

public interface TratamentoDAO {
    ...
    public List<Tratamento> buscarPorExperimento(Integer cod_experimento);    
}

TratamentoDAOHibernate:

.... @Override public List<Tratamento> buscarPorExperimento(Integer cod_experimento) { String hq1 = "select u from Tratamento u where u.cod_experimento = :cod_experimento"; Query consulta = this.session.createQuery(hq1); //consulta.setString("nome_experimento", nome_experimento); return (List<Tratamento>) consulta.uniqueResult();} ....

Por favor, me ajudem…