Restricción LIKE de la API de criterios de hibernación

Estoy tratando de consultar la base de datos PostgreSQL utilizando el criterio de restricción de Hibernatelike() con una palabra clave parcial:

Criterion c1 = Restrictions.like("stateName", "Virg*");
cri.add(c1);

return cri.list();

No devuelve nada masRestrictions.like("stateName", "Virginia"); Devuelve el registro correcto. ¿Cómo uso parcial?me gusta ¿Restricciones en hibernate?

EDITAR:
Lo tengo funcionando haciendo algo como esto:

public static List<Object> createQueryStringByRegex(Criteria cri, Parameters p) {
    String value = (String) p.value;
    if (value.contains("*")) {
        value = value.replace("*", "%");
    } else {
        value += "%";
    }
    // System.out.println("Value: "+value);
    Criterion c1 = Restrictions.ilike(p.property, value);
    cri.add(c1);

    return cri.list();

}

Respuestas a la pregunta(2)

Su respuesta a la pregunta