Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Hinernate Collection<String> проблема с мапингам?


Автор: unkis 20.4.2007, 18:47
Ребята питаюсь замапить вот такое поле
Код


        private Collection bitfieldTariffGroups;

     ........................
      .......................
...................................

       @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    public Collection<String> getBitfieldTariffGroups() {
        return bitfieldTariffGroups;
    }


    public void setBitfieldTariffGroups(Collection<String> bitfieldTariffGroups) {
        this.bitfieldTariffGroups = bitfieldTariffGroups;
    }


но получаю вот такую вот ошибку
Код

log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.AnnotationException: Use of @OneToMany or @ManyToMany targeting an unmapped class: de.hacon.requests.Parameters.bitfieldTariffGroups[java.lang.String]
    at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:252)


Получается что нельзя замапить такую конструкзию или?



Автор: polosatij 21.4.2007, 00:16

попробуй сделать:

Код

private Collection<String> bitfieldTariffGroups = new ArrayList<String>(); // как пример


 smile 

Автор: unkis 21.4.2007, 10:26
пробывал, все тоже самое.

Автор: tux 21.4.2007, 11:29
unkis, тогда у тебя класс java.lang.String должен быть замаплен на какую-то таблицу. Это на самом деле так?

Автор: unkis 21.4.2007, 11:57
нет, конечно, просто получается что если мне надо будет сохранить list<Integer>, то мне надо будет все обычные типы мапить.

жаль прийдется делать что-то типа 

Код

class MyString extends String{
}



и потом сохранять  Collection<MyString>

Автор: ShamanTrirukiy 23.4.2007, 15:56
Цитата(Hibernate annotations.pdf)

Код

@CollectionOfElements
public Set<String> getNickNames() {
  return nickNames;
}



Автор: unkis 24.4.2007, 16:49
ShamanTrirukiy,  спасибо работает
а можно ли для @CollectionOfElements задать самому имя и id таблицы в которой он всё сохранять будет?

Автор: polosatij 24.4.2007, 20:24

@JoinColumn(name="FOO_ID")

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)