我有一个用@Repository
注释的类,我用它作为cassandra的dao。它使用CassandraOperations
@Autowired
private CassandraOperations cassandraOperations;
{ // some method...
cassandraOperations.query(...);
...
}
当我使用该字段进行查询时,偶尔会收到一个数据传输ReadTimeOutException,这是一个RuntimeException。当CqlTemplate.java(CassandraOperations
的spring impl类)尝试调用translateExceptionIfPossible
时,它使用一个名为exceptionTranslator
的字段,该字段不是由弹簧注入器设置的。这会导致抛出空指针异常,而不是ReadTimeOutException。为什么这个字段没有正确设置?
它不能是我需要设置的东西,因为set方法只在impl类上,而不在层次结构中的任何接口上。
答案 0 :(得分:1)
刚看到这个。一个班轮修理,我们以前没见过它感到惊讶! :)
我创建了https://jira.spring.io/browse/DATACASS-159并在1.0.x(https://github.com/spring-projects/spring-data-cassandra/commit/21c3d06988c80b876ec374c1ebf4b36a525fb4d5)和&主(https://github.com/spring-projects/spring-data-cassandra/commit/f921553fb54598639f7b6e6f10ad0b8919bc0a80)分支。
如果需要,请使用1.0.5.BUILD-SNAPSHOT或1.1.0.BUILD-SNAPSHOT。两者都应该很快就可以使用。
马修