DataRetrievalFailureException: '__type__' не найдено в Spring Data Neo4j

У меня настроена и работает база данных Neo4j REST, и я пытался получить к ней доступ с помощью Spring Data Neo4j. Следующий код:

MyObject obj = myObjectRepository.findOne(1234L);

выдает следующее исключение:

Исключение в потоке "основной" org.springframework.dao.DataRetrievalFailureException: '__type__' на http://my.ip.addr.ess:7474/db/data/node/1234; вложенным исключением является org.neo4j.graphdb.NotFoundException: '__type__' на http://my.ip.addr.ess:7474/db/data/node/1234

Обратите внимание, что если я перехожу к http://my.ip.addr.ess:7474/db/data/node/1234, мой объект отображается правильно.

В моем помпе у меня есть org.springframework.data:spring-data-neo4j-rest:2.1.0.BUILD-SNAPSHOT


person Marsellus Wallace    schedule 10.12.2012    source источник
comment
это опечатка вопроса или у вас действительно есть 1234L с L в вашем коде?   -  person ulkas    schedule 11.12.2012
comment
нет, L - это просто синтаксис Java, указывающий, что 1234 является Long   -  person Marsellus Wallace    schedule 11.12.2012
comment
Как вы создали свой объект в БД? Можете ли вы поделиться кодом, который это делает, а также объявлением класса для MyObject и вашего репозитория и вашей конфигурации spring.   -  person Michael Hunger    schedule 17.12.2012
comment
Майкл, я создал базу данных neo4j с помощью скрипта Python. Должен ли я использовать Spring для импорта данных в БД, чтобы иметь возможность использовать их позже для манипуляций с графиками?   -  person Marsellus Wallace    schedule 10.01.2013


Ответы (2)


Я вижу ту же проблему. Кажется, мне нужно иметь свойство type для объекта db node. Почему ?

person Black Dog    schedule 29.12.2012

Вам нужно добавить свойство к вашему узлу с именем "__type__" и присвоить ему значение имени класса ваших объектов. Например. в вашем примере вы бы добавили к своему узлу:

свойство: __type__ значение: "MyObject"

person LTJHeron    schedule 04.06.2013