スプリング・データ・リポジトリの実装を別のフォルダに移動することはできますか(オリジナル・インターフェースと同じかサブフォルダではない)?私は同じフォルダ内のインターフェイスと実装を持っている場合、すべて正常に動作します。たとえばcom.app.domain.repo
からcom.app.infrastr.repo
に移動すると、私はInvocation of init method failed; nested exception is org.springframework.data.mapping.PropertyReferenceException: No property methodName found for type RepoInterfaceName
となります。スプリング・リポジトリを別のフォルダに移動
UPDATE
import com.app.domain.repo
public interface ARepo extends ElasticsearchRepository<A, String>, CustomizedARepo {
}
public interface CustomizedARepo {
List<A> makeSearch(int x);
}
import com.app.infrastr.repo
public class CustomizedARepoImpl implements CustomizedARepo {
private ElasticsearchTemplate elasticsearchTemplate;
public CustomizedARepoImpl(ElasticsearchTemplate elasticsearchTemplate) {
this.elasticsearchTemplate = elasticsearchTemplate;
}
@Override
public List<A> makeSearch(int x){ return null; }
}
と構成のクラス
@Configuration
@EnableElasticsearchRepositories(basePackages = {"com.app.domain.repo", "com.app.infrastr.repo"})
public class Config{}
エラーがあるさ:
Invocation of init method failed; nested exception is org.springframework.data.mapping.PropertyReferenceException: No property makeSearch found for type ARepo
私はcom.app.domain.repo
にCustomizedARepoImpl
を移動した場合、すべてがOKに動作します。
ここで関連するコードを入力して回答してください。ここには多くの可能性があります。私の推測では、特定のパッケージを指すカスタムのentityManagerFactory()Beanがあることです。 – Brian
私は質問を更新しました。 – bojanv55
あなたが追加した内容に基づいて、JPAとESのリポジトリを混在させるかどうかは疑問です。この回答は役に立ちますか? https://stackoverflow.com/a/32879779/4614870 – Brian