Версия VSStoSVN для CodePlex - одна из лучших, которые я нашел. У меня были довольно плохие результаты с версией PumaCode, но она прошла гладко.
Отметьте эту запись JIRA.
ConcurrentModificationException, когда коллекция встраиваемого объекта содержит коллекцию
Это известная ошибка в привязке аннотаций. И проблема заключается в Hibernate Core, который не поддерживает коллекции во встроенных коллекциях.
Я не могу дать вам никаких советов, связанных с Hibernate, но исключения ConcurrentModificationExceptions часто означают, что коллекция изменяется внутри своего итератора, например
for (String s : myStringCollection)
{
if (s.startsWith("XXX"))
{
myStringCollection.remove(s);
}
}
. Обычно этого можно избежать, явно создавая Итератор и вызов его метода remove () вместо метода Collection - но если это внутренний код Hibernate, у вас не будет этой опции.
Использование «@CollectionOfElements» и «@Embeddable» сбивает с толку. Я предполагаю, что вы хотите, чтобы маршрут и координаты были отдельными таблицами? Если так, то они действительно не должны быть @Embeddable. @Embeddable представляет собой то, что можно встроить в родительскую таблицу. Например, чтобы использовать составные ключи, вы обычно используете @EmbeddedId в качестве ПК, который связан с классом @Embeddable.
Поскольку вы упомянули, что переключение на Entity, похоже, решает проблему, я думаю, вам следует переключить Route и координировать с отдельными объектами. Тогда у вас будет гораздо более стандартная модель, которая решит вашу проблему.