본문 바로가기
Spring

jjwt 서버 적용 오류

by holy season 2023. 6. 12.
반응형

문제

jjwt를 활용한 자동로그인 기능을 구현하고 서버에 적용해 테스트 해보았는데 로그인되지 않는 문제가 발생했다.

개발자 도구로 문제가 발생한 지점을 확인해 보니 ajax 쪽에서 문제가 나왔다.

하지만 ajax 부분을 확인해보니 문제가 될만한 지점은 없었고 서버 Controller 쪽에서 문제가 난것이라 생각해 서버 로그를 확인해 보기 위해 tomcat 폴더 logs에 tail -f [파일명]을 실행한 후 로그인을 시도해 보았다.

현재 실행되고 있는 로그 확인

 

tail -f logs.txt

에러 발생

로그인을 시도할 때 마다 클래스를 찾을 수 없다는 에러를 발생시켰다.

서버를 돌리고 있는 자바의 버전은 openJDK 11버전이었고 jjwt는 jaxb를 사용하는데 jdk11 버전에서는 jaxb를 제거 했기때문에 클래스를 찾을 수 없다는 에러를 발생시킨 것이었다.

해결 방법

pom.xml에 jaxb라이브러리 의존성을 추가하면 된다.

https://mvnrepository.com/artifact/org.glassfish.jaxb/jaxb-runtime/4.0.2

		<dependency>
			<groupId>org.glassfish.jaxb</groupId>
			<artifactId>jaxb-runtime</artifactId>
			<version>4.0.2</version>
		</dependency>

출처

https://pradipta.github.io/jaxb-with-java-11/

 

A Problem with JJWT With Java 11 (9+)

A probelm with parsing JWT signed with a base 64 encoded secret with JAVA 11

pradipta.github.io

 

 

반응형