The following used to work in Spring 1.5.10.RELEASE, but does not work in Spring 2.0.7.RELEASE, and I do not know why:
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 (aka "The problem")
@Repository
public interface LocationRepository extends JpaRepository<Location, Long>, JpaSpecificationExecutor<Location> {
Location findByCLocationId(String cLocationId);
List<Location> findAllByOrderByCLocationIdAsc();
}
The error I'm getting under Spring 2.0.7.RELEASE for the above code, is
java.lang.IllegalArgumentException: Unable to locate Attribute with the the given name [CLocationId] on this ManagedType.
I cannot change the name of the attribute due to other circumstances, so I've tried different variations on the methods in the repository:
findBycLocationId
- No property orderBycLocationIdAsc found for type Location!findByClocationId
- No property clocationId found for type Location! Did you mean 'CLocationId','cLocationId'? findByCLocationId
- Unable to locate Attribute with the the given name [CLocationId] on this ManagedTypeWhat does it want?! I just want to upgrade the framework... ðŸ˜
You can use method name like this:
Location findByC_Location_Id(String cLocationId);
this can be helpful with references
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With