rjaros / kvision-examples

KVision examples

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Spring boot addressbook error

zeljkosh opened this issue · comments

Trying to run application always throws following error

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'initializer' defined in com.example.KVApplication: Invocation of init method failed; nested exception is org.springframework.data.r2dbc.connectionfactory.init.CannotReadScriptException: Cannot read SQL script from class path resource [schema.sql]; nested exception is java.io.FileNotFoundException: class path resource [schema.sql] cannot be opened because it does not exist at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1796) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:595) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:226) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:893) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551) ~[spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:62) ~[spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE] at com.example.MainKt.main(Main.kt:36) [main/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_201] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_201] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_201] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_201] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.3.1.RELEASE.jar:2.3.1.RELEASE] Caused by: org.springframework.data.r2dbc.connectionfactory.init.CannotReadScriptException: Cannot read SQL script from class path resource [schema.sql]; nested exception is java.io.FileNotFoundException: class path resource [schema.sql] cannot be opened because it does not exist at org.springframework.data.r2dbc.connectionfactory.init.ScriptUtils.lambda$executeSqlScript$1(ScriptUtils.java:463) ~[spring-data-r2dbc-1.1.1.RELEASE.jar:1.1.1.RELEASE] at reactor.core.publisher.Mono.lambda$onErrorMap$29(Mono.java:3271) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.lambda$onErrorResume$31(Mono.java:3361) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:88) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onError(FluxHandleFuseable.java:213) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxContextStart$ContextStartSubscriber.onError(FluxContextStart.java:110) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onError(FluxMapFuseable.java:326) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onError(FluxFilterFuseable.java:375) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoCollect$CollectSubscriber.onError(MonoCollect.java:143) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Operators.error(Operators.java:196) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxUsing.subscribe(FluxUsing.java:78) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.subscribe(Mono.java:4219) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:441) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onSubscribe(FluxConcatMap.java:211) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:161) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:86) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:81) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoUsingWhen$ResourceSubscriber.onNext(MonoUsingWhen.java:192) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:121) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1782) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoSupplier.subscribe(MonoSupplier.java:61) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.subscribe(Mono.java:4219) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:97) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:165) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onError(FluxMapFuseable.java:134) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:185) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2344) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.request(FluxHandleFuseable.java:243) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:162) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:103) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:90) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onSubscribe(FluxHandleFuseable.java:148) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoCurrentContext.subscribe(MonoCurrentContext.java:35) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.subscribe(Mono.java:4219) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.MonoUsingWhen.subscribe(MonoUsingWhen.java:96) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.subscribe(Mono.java:4219) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.block(Mono.java:1678) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at org.springframework.data.r2dbc.connectionfactory.init.ConnectionFactoryInitializer.execute(ConnectionFactoryInitializer.java:107) ~[spring-data-r2dbc-1.1.1.RELEASE.jar:1.1.1.RELEASE] at org.springframework.data.r2dbc.connectionfactory.init.ConnectionFactoryInitializer.afterPropertiesSet(ConnectionFactoryInitializer.java:91) ~[spring-data-r2dbc-1.1.1.RELEASE.jar:1.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1855) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1792) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE] ... 22 common frames omitted Suppressed: java.lang.Exception: #block terminated with an error at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:99) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] at reactor.core.publisher.Mono.block(Mono.java:1679) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] ... 26 common frames omitted Caused by: java.io.FileNotFoundException: class path resource [schema.sql] cannot be opened because it does not exist at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:180) ~[spring-core-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.core.io.AbstractResource.readableChannel(AbstractResource.java:149) ~[spring-core-5.2.7.RELEASE.jar:5.2.7.RELEASE] at org.springframework.core.io.AbstractFileResolvingResource.readableChannel(AbstractFileResolvingResource.java:220) ~[spring-core-5.2.7.RELEASE.jar:5.2.7.RELEASE] at reactor.core.publisher.FluxUsing.subscribe(FluxUsing.java:75) ~[reactor-core-3.3.6.RELEASE.jar:3.3.6.RELEASE] ... 54 common frames omitted

I assume its some pathing issue, but i havent changed or messed around with any classpaths, i tryed to point the main class to schema.sql but i always have same issue.

(Using windows btw)

Are you trying to run the original example or have you made some changes?
The original example is working fine for me on my Windows machine, but I had to change database location in src/backendMain/resources/application.yml file to:

r2dbc:h2:mem:///example_spring?options=DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE

Are you trying to run the original example or have you made some changes?
The original example is working fine for me on my Windows machine, but I had to change database location in src/backendMain/resources/application.yml file to:

r2dbc:h2:mem:///example_spring?options=DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE

I used your example 1 to 1. i changed nothing, just extracted and tryed to run it. i did it now again, clean download, extract i changed link as you showed, and same issue.
I will try to do this on my linux machine but i dont think that is the problem. Error remained the same

EDIT:
Your showcase example works really nice, had such fun playing around with it.
But noone of your 3 spring boot examples worked for me ( numbers, address book,template one)
Template one shows this in main class of backend

Actual class 'PingService' has no corresponding expected declaration

Numbers one has exception again in Main class of backend but a bit different, i will have to take a look again later.
Perhaps something is wrong with my intellij, but i dont think so. i will redo all examples on my linux machine.
Maybe your spring boot examples share common problem that manifests in different ways, its worth checking.

How do you run the examples? From the cmd.exe console window?
Have you checked https://kvision.gitbook.io/kvision-guide/part-3-server-side-interface/setting-up ?
Can you paste the whole gradle log from the start to the exception?

I managed to make it work on my other machine with no issues, there is some chance my hdd is damaged, or that intellij plugins cause some problems. Il close the issue since its not code related``

Good luck with your HDD!