И в моем файле свойств у меня есть

троил репозитории neo4j и cassandra отдельно с помощью весенней загрузки, используя spring-data. Однако, когда я пытаюсь использовать два репозитория в одних и тех же проектах, это не работает так, как ожидалось.

Это моя структура папок.

----- org.test.project

 -----controller
      BarController
      FooController
 -----models
      -----dao
           -----cassandra
                BarDAO
                FooDAO
           -----neo4j
                BarDAO
                FooDAO
 -----repositories
      -----cassandra
           BarRepository
           FooRepository
      -----neo
           BarRepository 
           FooRepository
 -----services
      CassandraService (Has cassandra repositories @Autowired)
      NeoService(Has neo repositories @Autowired)
 TestApp.java

Обратите внимание, что все репозитории дополняют соответствующий репозиторий spring-data соответствующим DAO.

Когда я запускаю с этими конфигурациями, это дает следующую ошибку.

 Field airportRepository in org.test.project.TestApp required a bean of type 'org.test.project.repositories.cassandra.BarRepository' that could not be found.

Я попытался изменить имена репозитория. Тогда это начало работать.

Первый вопрос: разве мы не можем иметь одинаковые имена, как они есть в разных пакетах, и начать работать?

Хотя в этот раз он начал работать, он выдал ошибку в заголовке аутентификации.

 org.neo4j.ogm.drivers.http.request.HttpRequestException: http://localhost:7474/db/data/transaction/commit: No authentication header supplied.

Я уже добавил ogm.properties, так же, как я делал, когда использовал только репозитории neo4j. Но, похоже, они больше не применяются. Поэтому я добавил следующее в application.properties.

 spring.data.neo4j.password=neo4j
 spring.data.neo4j.username=neo4j

Второй вопрос: как я могу настроить neo4j так же, как я делал только с neo4j? Я определил следующее в ogm.properties. Как я могу применить это в конфигурации neo4j?

 #Driver, required
 driver=org.neo4j.ogm.drivers.bolt.driver.BoltDriver

 #URI of the Neo4j database, required. If no port is specified, the          
 #default port 7687 is used. Otherwise, a port can be specified with   
 #bolt://neo4j:password@localhost:1234

 URI=bolt://neo4j:neo4j@localhost

 #Connection pool size (the maximum number of sessions per URL),    
 #optional, defaults to 50

 connection.pool.size=150

 #Encryption level (TLS), optional, defaults to REQUIRED. Valid  
 #values are NONE,REQUIRED

 encryption.level=NONE

С учетом вышеуказанных изменений, теперь он дает следующую ошибку.

 org.neo4j.ogm.exception.MappingException: No identity field found for class: org.rozzie.processor.models.dao.cassandra.FlightDAO

Обратите внимание, что исключение neo4j.ogm выбрасывается для моделей cassandra. Что происходит под капотом.Как я могу настроить эти две базы данных с помощью весенней загрузки в одном проекте, как указано выше?

Ответы на вопрос(2)

Ваш ответ на вопрос