728x90
프로젝트를 하면서 발생했던 에러 TooManyResultsException
프로젝트 병합 후 테스트를 하는데 500 에러가 났다.
로그인에 성공하면 메인페이지로 넘어가야 하는데
아무런 반응이 없고 TooManyResultsException가 뜨네요.
Expected one result (or null) to be returned by selectOne(), but found: 6
2023-12-01 10:35:34.981 ERROR 6360 --- [p-nio-80-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is
org.apache.ibatis.exceptions.
TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 6
] with root cause org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 6 at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:81) ~[mybatis-3.5.13.jar:3.5.13] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:425) ~[mybatis-spring-2.1.1.jar:2.1.1] at com.sun.proxy.$Proxy89.selectOne(Unknown Source) ~[na:na] at
메일 인증 구현할 때 같은 메일로 회원가입을 진행했었는데,
DB를 확인해보니 데이터 중복 문제임을 확인할 수 있었습니다.
test@test.com으로 로그인을 하고 있었는데 중복 계정이 6개나 있네요.
에러 메세지였던 " Expected one result (or null) to be returned by selectOne(), but found: 6 "
즉, selectOne은 단일 데이터를 가져오는데 데이터 중복으로 인해
여러개의 데이터를 가져오려고 하고 있기 때문에 발생한 에러였습니다.
중복 데이터를 삭제한 후 로그인을 시도하니
세션에 값도 들어오고 메인페이지로 잘 이동합니다. ㅎㅎ
클라이언트 쪽에서 기본적인 유효성 검사만 진행되도록 구현했었는데
서버쪽에서 DB에 이미 유효한 메일이 존재할 경우
회원가입을 진행할 수 없도록 양방향 유효성 검사를 하도록 수정해야겠습니다.
728x90
'벽돌깨기' 카테고리의 다른 글
[Tomcat] 이클립스 톰캣 Multiple Contexts have a path of "/spring". 에러 해결 (0) | 2023.10.25 |
---|---|
[Eclipse] The selection did not contain any resources that can run on a server 에러 해결 (0) | 2023.10.20 |
[SpringBoot] Axios post 요청 (2) | 2023.10.09 |