为什么CqlTemplate的ExceptionTranslator为空(cqoperations的impl类)



我有一个用@Repository注释的类,我用它作为cassandra的dao。它与CassandraOperations

实例自动连接
@Autowired
private CassandraOperations cassandraOperations;
{ // some method...
    cassandraOperations.query(...);
    ...
}

偶尔我得到一个datastax ReadTimeOutException,这是一个RuntimeException,当我使用该字段查询。当CqlTemplate.java (CassandraOperations的spring impl类)试图调用translateExceptionIfPossible时,它使用一个名为exceptionTranslator的字段,该字段不是由spring注入器设置的。这将导致抛出空指针异常,而不是ReadTimeOutException。为什么这个字段没有被正确设置?

它不能是我需要设置的东西,因为set方法只在impl类上,而不是在层次结构中的任何接口上。

刚刚看到。一个行修复,惊讶我们以前没有看到它!:)

我创建了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。两者应该很快就可以使用了。

马修

相关内容

  • 没有找到相关文章

最新更新