JPA Duvida como montar um criteria onde tenho um objeto join fora do objeto o que fazer?

esotu tentando fazer um query usando criteria onde minha classe princicipal

Criteria criteria = session.createCriteria(EstoqueItem,EstoqueItem);

e tento buscar todos registros o EstoqueItem onde o campo name
do objeto Modelo é igual LG

mas está me dando erro :

entei criar um alias de modelo mas não existe no objeto EstoqueItem o que fazer ?????

Criteria criteria = session.createCriteria(EstoqueItem,EstoqueItem);
if(detail.getColumn().equals("name")){
    criteria.createCriteria("device", "device");
    // device X Stock Item
    criteria.add( Restrictions.eqProperty("device"+".id", classTableMaster.getSimpleName().toLowerCase()+".device") );
    // device X device_model
   criteria.add( Restrictions.eqProperty("device"+".model", detail.getClassTableName()+".id"));
    //valor atr do objeto model
  criteria.add(Restrictions.eq(detail.getClassTableName()+"."+detail.getColumn(),detail.getValue()));
    	   }





Erro =org.hibernate.QueryException: could not resolve property: model of: br.com.EstoqueItem





class EstoqueItem {

  private int id

  private Dispositivo dispositivo;


}



class Dispositivo{


  private int id;
  private MOdelo modelo;

}


class Modelo {


   private int id ;
   private String name ;

}




Sua classe dispositivo possui um atributo com nome modelo, não model.

dessa forma funcionou …se alguém cair nessa mesma situação

abs

Criteria criteria = session.createCriteria(EstoqueItem,EstoqueItem); 

criteria.createCriteria("dispositivo", "dispo");

 criteria.createCriteria("dispo.modelo","modelo");

criteria.add(Restrictions.eq("modelo.name","LG"));