2016년 4월 25일 월요일

Android : "XmlPullParserException: Unexpected token" 오류

안드로이드에서 웹에 리퀘스트를 던져 XML 로 데이터를 받는 로직을 구현했다.
그런데...


"XmlPullParserException: Unexpected token" 라는 오류가 발생하고, 앱에서 아무런 반응이 없다.

이건 결국 전달된 XML 구조가 잘못되었다는 얘긴데...


받은 XML 을 보면 별 이상이 없어 보인다.
하지만 자세히 보면 "1번" 줄에 빈줄이 들어 있는 것이 보일것이다.
이게 XML 헤더를 인식하는 것을 방해 한다.

즉... XML 을 만드는 서버쪽 스크립트를 보면...


이렇게 스크립트 맨 위에 헤더를 설정하는 부분이 문제.
저것 때문에 XML 시작지점에 쓸데없는 빈 문자열이 들어간것.
저런 부분이 없는게 제일 좋지만... 안 넣을 수 없는 상황이라면...


요렇게 빈 문자열이 안들어 가게 엔터키 조차도 없이 만들어 준다.
이렇게 하면...


이렇게 쓸데 없는 문자열이 없어져 정상적으로 XML 로 인식이 된다.