Следующее использовалось в Spring 1.5.10.RELEASE, но не работает в Spring 2.0.7.RELEASE, и я не знаю почему:
Entity
@Entity
@Table(name = "locations")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Location {
// ... unimportant stuff
@Column(name = "c_locations_id")
private String cLocationId;
// ... more unimportant stuff
}
Репозиторий (он же "Проблема")
@Repository
public interface LocationRepository extends JpaRepository<Location, Long>, JpaSpecificationExecutor<Location> {
Location findByCLocationId(String cLocationId);
List<Location> findAllByOrderByCLocationIdAsc();
}
Ошибка, которую я получаю в Spring 2.0.7.RELEASE для приведенного выше кода:
java.lang.IllegalArgumentException: невозможно найти атрибут с заданным именем [CLocationId] в этом ManagedType.
Я не могу изменить имя атрибута из-за другогообстоятельства, поэтому я пробовал разные варианты методов в хранилище:
findBycLocationId
- не найдено свойство orderBycLocationIdAsc для типа Location! findByClocationId
- нет свойства clocationIdнайдено для типа Location!Вы имели в виду «CLocationId», «cLocationId»? findByCLocationId
- Невозможно найти атрибут с заданным именем [CLocationId] в этом ManagedType
Чего он хочет ?!Я просто хочу обновить фреймворк ... ?