Skip to content

"No backing RepositoryOperations configured for repository" in native image. #161

@romanmorenko

Description

@romanmorenko

Expected Behavior

No response

Actual Behaviour

We use R2dbcRepository and on JDK8 all works fine. On native-image we catch an error

ERROR i.m.h.n.stream.HttpStreamsHandler - Error occurred writing stream response: No backing RepositoryOperations configured for repository. Check your configuration and try again

micronautguide    | io.micronaut.context.exceptions.ConfigurationException: No backing RepositoryOperations configured for repository. Check your configuration and try again

micronautguide    |  at io.micronaut.data.intercept.DataIntroductionAdvice.findInterceptor(DataIntroductionAdvice.java:124)

micronautguide    |  at io.micronaut.data.intercept.DataIntroductionAdvice.intercept(DataIntroductionAdvice.java:78)

micronautguide    |  at io.micronaut.aop.chain.MethodInterceptorChain.proceed(MethodInterceptorChain.java:137)

micronautguide    |  at io.micronaut.validation.ValidatingInterceptor.intercept(ValidatingInterceptor.java:138)

micronautguide    |  at io.micronaut.aop.chain.MethodInterceptorChain.proceed(MethodInterceptorChain.java:137)

micronautguide    |  at example.micronaut.AuthorRepository$Intercepted.save(Unknown Source)

micronautguide    |  at example.micronaut.AuthorController.create$lambda-0(AuthorController.kt:29)

micronautguide    |  at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:125)

micronautguide    |  at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82)

micronautguide    |  at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82)

micronautguide    |  at io.micronaut.http.server.netty.binders.PublisherBodyBinder$1.doOnNext(PublisherBodyBinder.java:108)

micronautguide    |  at io.micronaut.core.async.subscriber.CompletionAwareSubscriber.onNext(CompletionAwareSubscriber.java:52)

micronautguide    |  at io.micronaut.http.server.netty.jackson.JsonContentProcessor$1.doOnNext(JsonContentProcessor.java:130)

micronautguide    |  at io.micronaut.http.server.netty.jackson.JsonContentProcessor$1.doOnNext(JsonContentProcessor.java:98)

micronautguide    |  at io.micronaut.core.async.subscriber.CompletionAwareSubscriber.onNext(CompletionAwareSubscriber.java:52)

micronautguide    |  at io.micronaut.jackson.parser.JacksonProcessor.publishNode(JacksonProcessor.java:211)

micronautguide    |  at io.micronaut.jackson.parser.JacksonProcessor.onUpstreamMessage(JacksonProcessor.java:178)

micronautguide    |  at io.micronaut.jackson.parser.JacksonProcessor.onUpstreamMessage(JacksonProcessor.java:49)

micronautguide    |  at io.micronaut.core.async.processor.SingleThreadedBufferingProcessor.doOnNext(SingleThreadedBufferingProcessor.java:56)

micronautguide    |  at io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber.onNext(SingleThreadedBufferingSubscriber.java:91)

micronautguide    |  at io.micronaut.http.server.netty.jackson.JsonContentProcessor.onData(JsonContentProcessor.java:152)

micronautguide    |  at io.micronaut.http.server.netty.AbstractHttpContentProcessor.doOnNext(AbstractHttpContentProcessor.java:78)

micronautguide    |  at io.micronaut.http.server.netty.AbstractHttpContentProcessor.doOnNext(AbstractHttpContentProcessor.java:36)

micronautguide    |  at io.micronaut.core.async.subscriber.CompletionAwareSubscriber.onNext(CompletionAwareSubscriber.java:52)

micronautguide    |  at io.micronaut.http.netty.reactive.HandlerPublisher.publishMessage(HandlerPublisher.java:378)

micronautguide    |  at io.micronaut.http.netty.reactive.HandlerPublisher.access$600(HandlerPublisher.java:65)

micronautguide    |  at io.micronaut.http.netty.reactive.HandlerPublisher$ChannelSubscription.flushBuffer(HandlerPublisher.java:487)

micronautguide    |  at io.micronaut.http.netty.reactive.HandlerPublisher$ChannelSubscription.receivedDemand(HandlerPublisher.java:534)

micronautguide    |  at io.micronaut.http.netty.reactive.HandlerPublisher$ChannelSubscription.lambda$request$0(HandlerPublisher.java:474)

micronautguide    |  at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)

micronautguide    |  at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)

micronautguide    |  at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:497)

micronautguide    |  at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)

micronautguide    |  at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)

micronautguide    |  at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)

micronautguide    |  at java.lang.Thread.run(Thread.java:748)

micronautguide    |  at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:567)

micronautguide    |  at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:192)

micronautguide    | Caused by: io.micronaut.context.exceptions.NoSuchBeanException: No bean of type [io.micronaut.data.r2dbc.operations.R2dbcRepositoryOperations] exists. Make sure the bean is not disabled by bean requirements (enable trace logging for 'io.micronaut.context.condition' to check) and if the bean is enabled then ensure the class is declared a bean and annotation processing is enabled (for Java and Kotlin the micronaut-inject-java' dependency should be configured as an annotation processor).

micronautguide    |  at io.micronaut.context.DefaultBeanContext.getBeanInternal(DefaultBeanContext.java:2698)

micronautguide    |  at io.micronaut.context.DefaultBeanContext.getBean(DefaultBeanContext.java:824)

micronautguide    |  at io.micronaut.data.intercept.DataIntroductionAdvice.findInterceptor(DataIntroductionAdvice.java:121)

Steps To Reproduce

  • Kotlin 1.5
  • graalvm-ce:java8-21.2.0

Environment Information

No response

Example Application

No response

Version

3.0.1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions