Я пытаюсь подключить приложение весенней загрузки с DynamoDB, используя эту статью .
Но я получаю эту ошибку:
org.springframework.beans.factory.BeanCreationException: Ошибка создания компонента с именем customerRepository: сбой вызова метода init; Вложенное исключение - java.lang.AbstractMethodError: org.springframework.data.mapping.context.AbstractMappingContext.createPersistentProperty (Lorg / springframework / data / mapping / model / Property; Lorg / springframeworkwork / data / mapping / ltable / m / / данные / отображение / модель / SimpleTypeHolder;) Lorg / springframework / данные / отображение / PersistentProperty;
Мой код:
Модель клиента:
@DynamoDBTable(tableName = "Customer")
public class Customer {
private String id;
private String firstName;
private String lastName;
public Customer() {
}
public Customer(String id, String firstName, String lastName) {
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
}
@DynamoDBHashKey(attributeName = "Id")
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@DynamoDBAttribute(attributeName = "FirstName")
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
@DynamoDBAttribute(attributeName = "LastName")
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
@Override
public String toString() {
return String.format("Customer[id=%s, firstName='%s', lastName='%s']", id, firstName, lastName);
}
}
DynamoDBConfig:
@Configuration
@EnableDynamoDBRepositories(basePackages = "com.DynamoTest.DynamoTest.repo")
public class DynamoDBConfig {
@Value("${amazon.dynamodb.endpoint}")
private String dBEndpoint;
@Value("${amazon.aws.accesskey}")
private String accessKey;
@Value("${amazon.aws.secretkey}")
private String secretKey;
@Bean
public AmazonDynamoDB amazonDynamoDB() {
AmazonDynamoDB dynamoDB = new AmazonDynamoDBClient(amazonAWSCredentials());
if (!StringUtils.isNullOrEmpty(dBEndpoint)) {
dynamoDB.setEndpoint(dBEndpoint);
}
return dynamoDB;
}
@Bean
public AWSCredentials amazonAWSCredentials() {
return new BasicAWSCredentials(accessKey, secretKey);
}
}
Repo:
@EnableScan
@Repository
public interface CustomerRepository extends CrudRepository<Customer,String>
{
}