2017-02-06 3 views
0

背景:私はproj Aとproj Bという2つのプロジェクトを持っています。今、proj Aでcache.xmlファイル、 bean)、リポジトリクラス(RecordRepository)。私はPROJ Bでは別の.jarファイルのcache.xmlで定義されたBeanをロードする際に問題が発生する

Cache.xml

</gfe:client-region> 

<!--Scan for annotated GemFire Repositories--> 
<gfe-data:repositories base-package="cache.repository" /> 

cache.xmlにリポジトリクラスをロードしています、私はPROJ Aのjarファイルをインポートしてから、豆とリポジトリをロードしてみてください。 私の目標は、顧客Beanのオブジェクトを作成してから、リポジトリクラスを呼び出して顧客Beanを保存することです。

Employee emp = (Employee)facilityCacheLoader.getRegionBean(); 
emp.setRecordId("2001"); 
emp.setRecordString("record string 2002"); 

// update the Bean and save 

RecordRepository rep = (RecordRepository)facilityCacheLoader.getRepository(); 
rep.save(emp); 

しかし、私は次の例外を取得しています:スレッドで

例外は、「メイン」org.springframework.beans.factory.NoSuchBeanDefinitionException:タイプなし予選豆[cache.repository.RecordRepository]を に定義され(AbstractApplicationContext.java:1125) at com.rxc.cacheclient.CacheLoaderClient .main(CacheLoaderClient.java:40)

答えて

0

どういう意味ですか?

proj Bでは、私はproj Aのjarをインポートしてから、そのBeanとリポジトリを読み込もうとします。

具体的には...「私はプロジエフの瓶を輸入しています」?効果的

、projのAのJARファイルを想定し、projのBによって作成されたアプリケーションのクラスパス上にある必要がありますが、もちろん、cache.repository.RecordRepositoryはPROJのAで定義されたRepositoryクラスの完全修飾クラス名(FQCN)であり、これを使用おそらく、あなたが共有できる

<!--Scan for annotated GemFire Repositories--> 
<gfe-data:repositories base-package="cache.repository" /> 

...つまり、projのBのアプリケーションでは、アプリケーション定義のRepositories(例えば、あなたのRecordRepositoryなど)を見つけるためにSDのインフラストラクチャによって使用さSpringのクラスパス・コンポーネント・スキャン、でピックアップされることを期待GitHubプロジェクトのアプリケーションコードと設定

ありがとう! -John

+0

これは私がやっていることです。 ProjのJarファイルをプロジェクトBのクラスパスに追加していますが、RecordRepositoryを取得していません。しかし、Proj BでProj Aを追加すると、RecordRepositoryが取得され、領域が更新されます。私は確信していませんが、生成されているjarファイルに問題があるようです。 – abhisekh

+0

私はProj AとProj Bという2つのプロジェクトを持っています。Proj Aでは、CrudRepositoryを拡張しているリポジトリインタフェースを持っています。このリポジトリインタフェースは、その領域からデータを取得して配置します。 Proj AにProj Aを含めると、私は地域のデータを保存/更新することができます。しかし、Proj Aのjarファイルを作成し、Project Bのクラスパスにそのjarファイルを含めると、リポジトリから()/ get()を実行できないため、エラーがスローされます - org.springframework.beans.factory.NoSuchBeanDefinitionException: [FacilityRepository]タイプの適格なBeanが定義されていません – abhisekh

関連する問題