Framework/Springboot

[SpringBoot] Failed to instantiate Factory method 'someHotMongoFactory' threw exception with message: Cannot invoke "String.startsWith(String)" because "connectionString" is null

yuri lee 2023. 4. 26. 20:25
๋ฐ˜์‘ํ˜•

 

Intro 

mongodb ์—์„œ ์ถ”๊ฐ€๋œ ์ปฌ๋ ‰์…˜์„ ์Šคํ”„๋ง๋ถ€ํŠธ์—์„œ ํ™œ์šฉํ•˜๋˜ ๋„์ค‘ ์•„๋ž˜์˜ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

 

 

Failed to instantiate [org.springframework.data.mongodb.core.SimpleReactiveMongoDatabaseFactory]: Factory method 'someHotMongoFactory' threw exception with message: Cannot invoke "String.startsWith(String)" because "connectionString" is null 

 

Why?

์ด ์˜ค๋ฅ˜๋Š” connectionString์ด null์ด๊ธฐ ๋•Œ๋ฌธ์— "String.startsWith(String)"๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. 

 

SomeHotMongoConfig ํด๋ž˜์Šค์˜ someHotMongoFactory() ๋ฉ”์„œ๋“œ์—์„œ ๋ฐœ์ƒํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ๋ฉ”์„œ๋“œ๋ฅผ ํ™•์ธํ•˜๊ณ , MongoClientSettings ๊ฐ์ฒด๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์†์„ฑ ์ค‘ ํ•˜๋‚˜์— connectionString์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰ ์ด ์†์„ฑ์ด null์ด๋ฉด, Mongo DB์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. 

 

How to solve

์ด ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” application.properties ๋˜๋Š” application.yml ํŒŒ์ผ์— ์„ค์ •๋œ Mongo DB ๊ตฌ์„ฑ ์ •๋ณด๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ์ง€ ํ™•์ธํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.  ์ œ ๊ฒฝ์šฐ application.yml ์—์„œ ์ถ”๊ฐ€๋œ collection์„ ์ถ”๊ฐ€ํ•ด์ฃผ๋‹ˆ ์ •์ƒ ์ž‘๋™ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 

๋ฐ˜์‘ํ˜•