iOS 10 부터 NSData description 의 출력이 바뀌어서 NSData 타입인 Device Token 을 NSString 으로 변환하면 {length=32, "alkfjadsf} 형태로 나옴.

이것 때문에 서버에 엉뚱한 Token 값이 저장되면 안되는 문제 였음.

그리고 Push 서버에 Servlet URL 이 PushRegister 와 PushRegisterUpdate 가 있는데, 2개가 하는일이 동일하다 (무언가 서로 다르게 구성하겠다고 생각했던것 같은데...) 그래서 PushRegisterUpdate 를 web.xml 에서 지운것 같은데, 무지게 앱에서 이걸 쓰고 있네. 그 때 작업하면서 뭔가 잘 못 생각했던 듯.

 

다음 업데이트에서는 Token 이 생성되거나 변경되면 Push2Register 를 호출. DB에 token 정보만 변경하고,

로그인시 새글알림 옵션을 변경하면 Push2Update 를 호출, token 정보와는 관계없이 옵션만 변경하도록 수정하자.

 

무지개에서 이걸 복구하고, 공동육아도 동일한 문제가 있을 것이라는 생각에 수정하고 (나중에 보니 공동육아는 PushRegisterUpdate 를 안쓰네. 두개가 뭐가 이렇게 다른 건지) Tomcat 을 재시작 했는데, 한글로 된 아이디가 로그에도 ??? 로 보이고, DB에도 제대로 들어가지 않는다.

그동안 이런일이 없었는데, 공동육아 서버 환경이 변했나...

tomcat 로그 한글 깨짐으로 구글링해서 다음의 링크를 찾았다.

https://0taeng.tistory.com/28

 

linux Tomcat catalina log 한글(글자) 깨짐

리눅스에 서버를 세팅하고, 로그를 확인할때... 한글이 깨질때... 당황할때가 있다! 그럼 하나만 보면 되는게 아니라... 캐릭터 셋 설정한데를 다 찾아봐야한다... 그래서 한글이 깨지면.. 쉽게 해결이 안될때가..

0taeng.tistory.com

tomcat 의 catalina.sh 에 아래 라인을 넣고 나니 해결 됨.

 

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8 -Dfile.client.encoding=UTF-8 -Dclient.encoding.override=UTF-8"

 

+ Recent posts