spring-dataを使用して、springブートと別にneo4jリポジトリとcassandraリポジトリを設定しました。しかし、同じプロジェクトで2つのリポジトリを使用しようとすると、期待どおりに機能しません。同じ春のブートアプリケーションでneo4jリポジトリとcassandraリポジトリを設定する方法
これは私のフォルダ構造です。全てのリポジトリは、各DAOと各ばねdatarepositoryを拡張
----- 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
注意。
この構成で実行すると、次のエラーが発生します。
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.
私はすでに、私は唯一のNeo4jリポジトリを使用していたときに私がやったのと同じ方法をogm.propertiesを追加しました。しかし、彼らはもはや適用されないようです。だから私はapplication.propertiesに次のように追加しました。
spring.data.neo4j.password=neo4j
spring.data.neo4j.username=neo4j
2つ目の質問は、私はちょうど私が唯一の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:[email protected]:1234
URI=bolt://neo4j:[email protected]
#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
cassandraモデルではneo4j.ogm例外がスローされることに注意してください。フードの下で何が起こっているのですか? 上記のように1つのプロジェクトでスプリングブートを使用してこれら2つのデータベースを設定するにはどうすればよいですか?
を持っているファイルを、あなたのJavaの設定が表示されことができますか? '@ EnableXRepositories'とogmの' SessionFactory'などがあります。 –
@ frant.hartm私は春には新しいです。 spring-data-neo4jとspring-data-cassandraを別々に実験したところ、特定のJava設定ファイルがありませんでした。完全なコード(私が最初に説明したように)は、https://github.com/ChamaraPhilipsuom/rozzie –