2

を使用して、スプリング ブートで小さなプロジェクトをセットアップしていますspring-data-cassandra

@Table オブジェクトに Joda time Datetime があると、テストが中断することに気付きました。スタックには次のようなエラーが表示されます。

Caused by: org.springframework.data.cassandra.mapping.VerifierMappingExceptions: org.joda.time.Chronology: Cassandra entities must have the @Table, @Persistent or @PrimaryKeyClass Annotation

私の構成は以下の通りです:

@Configuration
@EnableCassandraRepositories(basePackages ="com.myproject.cassandra.repository")
@ComponentScan(basePackages = "com.myproject.cassandra")
@EnableAutoConfiguration
class CassandraConfiguration {
   private static ConfigContext confitConfig = ConfigContext.lookup();
   //private static AdminContext confitAdmin = AdminContext.lookup();
   DataSource cassandraDataSource

   static {
      confitConfig.register(DataSource.class);
   }

   Collection<DataSource> dataSources = confitConfig.list(DataSource.class)

   CassandraConfiguration() {
      cassandraDataSource = new DataSource();

      dataSources.each { d -> d.name == "Cassandra"
         cassandraDataSource = d
      }
   }

   @Bean
   public CassandraClusterFactoryBean cluster(){
      CassandraClusterFactoryBean cluster = new CassandraClusterFactoryBean()
      cluster.setContactPoints(cassandraDataSource.host)
      cluster.setPort(cassandraDataSource.port)
      return cluster
   }

   @Bean
   public CassandraMappingContext mappingContext() {
      return new BasicCassandraMappingContext()
   }

   @Bean
   public CassandraConverter converter(){
      return new MappingCassandraConverter(mappingContext())
   }

   @Bean
   public CassandraSessionFactoryBean session() throws Exception {
      CassandraSessionFactoryBean session= new CassandraSessionFactoryBean()
      session.setCluster(cluster().getObject())
      session.setConverter(converter())
      session.setKeyspaceName(cassandraDataSource.database)
      session.setSchemaAction(SchemaAction.NONE)
      return session;
   }

   @Bean
   public CassandraOperations cassandraTemplate() throws Exception {
      return new CassandraTemplate(session().getObject())
   }
}

を使用しているために発生する可能性はありBasicCassandraMappingContextますか? これを修正する方法は?

4

0 に答える 0