Я недавно обновился до Spring Boot 2 (и, следовательно, Spring data 2), и у меня есть последняя версия Java-драйвера Arango и версии arango-spring-data (5.0.1 и 3.1.1 соответственно)
У меня возникли проблемы с получением свойства с типом java.lang.Object
Я получаю эту ошибку
.... due to HttpClientErrorException: {"status":"BAD_REQUEST","timestamp":"2018-11-10 17:20:07","message":"Bad request. The server cannot complete the request as it is invalid.","detailMessage":"Unsupported Map type: java.lang.Object","invalidParameters":[]}
Я вижу, что в DefaultArangoConverter, если тип - Object, он обрабатывается, как если бы это была карта ...
if (typeToUse.isMap() || ClassTypeInformation.OBJECT.equals(typeToUse)) {
return readMap(typeToUse, source);
}
....
в readMap(..)
final Map<Object, Object> map = CollectionFactory.createMap(type.getType(), keyType, source.size());
CollectionFactory используется для создания «карты» - и это не нравится.
CollectionFactory.java
} else if (!Map.class.isAssignableFrom(mapType)) {
throw new IllegalArgumentException("Unsupported Map type: " + mapType.getName());
Кто-нибудь еще понимает это? У меня может быть неправильная конфигурация, но я использую довольно нестандартную конфигурацию.
Обновлять:
Если тип - Map, он работает нормально, но если карта содержит карту (то есть в одном из «значений»), я получаю ту же ошибку.




Спасибо за это, супербыстрый ответ!