본문 바로가기

Dev Story/dev

[JSON] JSON-lib Java Library


JSONLibTest.java


TestBean.java



Introduction


JSON-lib (http://json-lib.sourceforge.net/)는 자바에서 beans, maps, collections, array 그리고 XML을 JSON 으로 변환하기 위해 사용하는 자바 라이브러리이다. 




Download


다음의 경로에서 다운로드 한다.



Dependencies


주의해야할 점은 common-lang 최신 버전(3.3.1)을 사용할 경우 org.apache.commons.lang.exception.NestableRuntimeException 이 발생하게 된다. 위의 경로에서 패키지를 다운 받아 등록하거나 pom.xml에 아래의 Dependency를 추가한다.



How to use json-lib


Array and Collection to JSON : 


Bean and Map to JSON : 


JSON to Beans : 


Json to XML AND XML to JSON : 

XMLSerializer.write()와 XMLSerializer.read() 를 사용하여 XML을 JSON으로 JSON을 XML로 변환할 수 있다.


그런데 위의 소스를 돌려보면 java.lang.NoClassDefFoundError: nu/xom/Element 를 던진다.

json-lib 사이트에서 살펴보면 이와 관련된 언급이 없는 것 같은데...


라이브러리를 하나 추가해야 한다.

XOM(XML Object Model) 라이브러리를 추가해야한다. 여기서 다운로드 할 수 있다.




위의 코드를 돌려보면서 발생할 수 있는 Exception은 다음과 같다.

  • java.lang.NoClassDefFoundError
    • 위의 의존성 패키지에서 누락된게 있는지 확인해본다.
  • org.apache.commons.lang.exception.NestableRuntimeException
    • 최신버전 (commons-lang3-3.1.jar) 사용시에 오류 발생
  • java.lang.NoClassDefFoundError: nu/xom/Element
    • XML을 사용할 때 라이브러리를 추가한다.




끝.