He resulto mis dudas el query que mensiono al inicio del post quedaria asi
Código PHP:
select cap.idregional
from caplaza cap
where region != '0' and fechaobsol is null
group by cap.idregional
Esto es en hibernate
Código PHP:
Criteria criteria = session.createCriteria(Caplaza.class)
.add(Restrictions.not(Restrictions.eq("region", "0")))
.setProjection(Projections.projectionList().add(Projections.groupProperty("idregional")));
criteria.add(Restrictions.isNull("fechaobsol"));
lRegiones = criteria.list();
Para quien quiera entender mejor el manejo de criteria pueden leer este pdf que encontre en ingles pero esta muy bien explicado y el ingles es sencillo gracias a elAntonie por su introduccion y por su tiempo