Гибернация -> ArrayList нельзя преобразовать в Set

У меня есть приложение Java EE, и я использую Hibernate. Объекты домена, я изменил List / ArrayList на Set / HashSet, потому что лучше использовать Set.

Но в моей реализации Dao я столкнулся с проблемой:

public Set<Person> getAllPersons() {
    SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
    Session sess = sessionFactory.getCurrentSession();

    Transaction tx = sess.beginTransaction();
    @SuppressWarnings("unchecked")
    Set<Item> items = (Set<Item>) sess.createQuery("from Item").list();
    tx.commit();

    return items;
}

Здесь я получаю сообщение об ошибке:

java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Set

What что я могу сделать, чтобы избежать этой ошибки?

Заранее благодарим Вас и С наилучшими пожеланиями.

9
задан Tim 12 October 2010 в 11:59
поделиться