Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BE] Spring Boot 버전을 3.2.5 버전으로 업그레이드한다. #989

Closed
seokjin8678 opened this issue May 21, 2024 · 0 comments · Fixed by #990
Closed

[BE] Spring Boot 버전을 3.2.5 버전으로 업그레이드한다. #989

seokjin8678 opened this issue May 21, 2024 · 0 comments · Fixed by #990
Labels
BE 백엔드에 관련된 작업 🐛 버그 버그에 관련된 작업

Comments

@seokjin8678
Copy link
Collaborator

✨ 세부 내용

#988 이슈를 처리하려고, Stage 엔티티에 @OneToMany 단방향 관계를 가진 List<StageArtist> 필드를 정의했더니 다음과 같은 에러가 발생하며 어플리케이션 실행에 실패합니다.

[2024-05-21 23:57:05:2533] [main] ERROR [org.springframework.boot.SpringApplication.reportFailure:827] - Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: class org.hibernate.mapping.BasicValue cannot be cast to class org.hibernate.mapping.ToOne (org.hibernate.mapping.BasicValue and org.hibernate.mapping.ToOne are in unnamed module of loader 'app')
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1770)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:598)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
Caused by: java.lang.ClassCastException: class org.hibernate.mapping.BasicValue cannot be cast to class org.hibernate.mapping.ToOne (org.hibernate.mapping.BasicValue and org.hibernate.mapping.ToOne are in unnamed module of loader 'app')
	at org.hibernate.boot.model.internal.BinderHelper.checkMappedByType(BinderHelper.java:1087)
	at org.hibernate.boot.model.internal.CollectionBinder.isReversePropertyInJoin(CollectionBinder.java:1572)
	at org.hibernate.boot.model.internal.CollectionBinder.noAssociationTable(CollectionBinder.java:1583)
	at org.hibernate.boot.model.internal.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:1544)
	at org.hibernate.boot.model.internal.CollectionBinder$1.secondPass(CollectionBinder.java:1535)

해당 이슈는 하이버네이트 버그로, 6.3.0 이상 버전부터 고쳐졌다고 합니다.

스프링 의존성 버전에서 하이버네이트의 최신 버전은 6.4.4 이기 때문에 해당 버그가 수정되었습니다.

따라서 스프링 부트 버전을 최신으로 올려서 해당 버그를 수정해야 할 것 같습니다.

추가로 스프링 부트 버전을 올리면서, 새롭게 추가된 RestClient를 사용하여 기존에 사용되던 RestTemplate를 대체할 수 있을 것 같습니다.
(RestTemplate는 스프링 5.0 버전부터 유지보수 단계에 들어섰기 때문에, 갈아타야할 이유가 있습니다)
(또한 RestClient를 사용하면 fluent style으로 보기 좋은 코드를 작성할 수 있습니다)

⏰ 예상 소요 시간

1시간

@seokjin8678 seokjin8678 added BE 백엔드에 관련된 작업 🐛 버그 버그에 관련된 작업 labels May 21, 2024
seokjin8678 added a commit that referenced this issue May 22, 2024
chore: Spring Boot 3.2.5 버전 업그레이드
@github-project-automation github-project-automation bot moved this from Todo to Done in 2023-festa-go May 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BE 백엔드에 관련된 작업 🐛 버그 버그에 관련된 작업
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant