[jsf + spring + ibatis] No SqlMapClient specified

Ola a todos,
Aqui na empresa estamos fazendo alguns testes, criando uma pequena aplicação utilizando JSF, Spring e iBatis, porem não conseguimos descobrir a solução deste erro:

Segue o applicationContext.xml:

DAO:

public interface UFDAO {
    public UF get(int id);
    public void insert(UF uf);
    public void delete(int id);
    public void update(UF uf);
    public List getAll();
}

Implementação do DAO(O BaseDAO somente estende SqlMapClientTemplate):

public class UFDAOImpl extends BaseDAO implements UFDAO {  

   
    public UFDAOImpl(){
        
    }

    public UF get(int id) {
        return (UF) queryForObject("uf.get", id);
    }

    public void insert(UF uf) {
    
            insert("uf.insert", uf);
    
    }

    public void delete(int id) {
        delete("uf.delete", id);
    }
 
    public void update(UF uf) {
        update("uf.update", uf);
    }

    public List getAll() {
        return queryForList("uf.getAll", null);
    }
    
    public int getNexId() {
        try {
            return ((Integer) queryForObject("uf.getLastId", null)) + 1;
        } catch  (NullPointerException e) {
            return 1;
        }
    }
}

O Managed Bean:

public class CadastroUF{  
    private UF uf;
    private UFDAO ufDAO;
    
    public CadastroUF() {
        uf = new UF();
        ufDAO = new UFDAOImpl();        
    }        
      
    public UF getUf(){
        return uf;
    }
    
    public void setUf(UF uf){
        this.uf = uf;
    }
    
    public String insert(){
        ufDAO.insert(uf);
        uf = new UF(); 
        return "";
    }
    
    public String delete(){
        ufDAO.delete(uf.getId());
        uf = new UF();
        return "";
    }
    
    public String update(){
        ufDAO.update(uf);
        return "";
    }
    
    public UF find(){
        return ufDAO.get(uf.getId());
    }
    
    public List all(){
        return ufDAO.getAll();
    }   
}

Desde já, agradeço. :smiley:

Olá a todos!
Passei por essa mesma dificuldade e resolvi postar a solução para quem vier a precisar.

Quando se usa Spring + Ibatis é necessário ter no faces-config.xml o seguinte trecho:

[code]<?xml version="1.0" encoding="UTF-8"?>

<application>
    <el-resolver>org.springframework.web.jsf.el.DelegatingFacesELResolver</el-resolver>
</application>
....

[/code]

Essa linha de comando é indispensável, pois permite que se possa referenciar os beans do spring no faces-config.xml da seguinte forma:

...
<managed-bean>  
       ...      
        <managed-property>
            <property-name>CadastroUF</property-name>
            <property-class>caminhoclasse.CadastroUF</property-class>
            <value>#{UFDAOImpl}</value>  //bean que está no applicationContext.xml
        </managed-property>
</managed-bean>
...

Esse código só pode ser usado a partir de JSF 1.2 e Spring a partir de 2.1

Fonte: http://www.jroller.com/javamail/entry/integrando_jsf_12_com_spring