【发布时间】:2018-10-18 08:22:23
【问题描述】:
我想获取所有数据库的 ID。为此,我必须获取所有数据库,然后我将为每个数据库获取 Id 并将其添加到字符串列表中(id 是字符串)。但毕竟我得到了错误:
Request processing failed; nested exception is com.datastax.driver.core.exceptions.CodecNotFoundException:
Codec not found for requested operation: [list<varchar> <-> java.util.Set<java.lang.String>]
这是我在 dbrepository 的查询:
@Query("SELECT * FROM db_params")
Result<Database> getAllDatabases();
以及获取 ID 列表的服务
@Override
public List<String> getAllDatabasesId() {
Result<Database> databaseResult = databaseRepository.getAllDatabases();
List<String> listOfId = new ArrayList<>();
for (Database database : databaseResult) {
listOfId.add(database.getId());
}
return listOfId;
}
我不认为我在控制器中做错了什么,但这里是:
@GetMapping("/all-id")
fun getAllDatabasesId(): HttpEntity<List<String>> {
val result = databaseService.allDatabasesId
return ResponseEntity.ok(result)
}
有人可以帮我解决这个问题吗?
【问题讨论】:
标签: java spring rest kotlin cassandra