SOAP ํต์ ์ ํตํด์ output์ xmlํ์์ผ๋ก ๋ฐ์๋ค.
๊ทธ output์ xmlOutput์ ์ ์ฅ๋์ด ์๋ค.
ํ๋ก ํธ์๋์ json ํ์์ผ๋ก ๋ณด๋ด์ฃผ๊ธฐ ์ํด์ json์ผ๋ก ๋ณํํด์ผ ํ๋ค.
XML to Json
// XmlMapper๋ฅผ ์ฌ์ฉํ์ฌ XML์ JSON์ผ๋ก ๋ณํ
XmlMapper xmlMapper = new XmlMapper();
JsonNode jsonNode = xmlMapper.readTree(xmlOutput.getBytes());
// JSON ๊ฐ์ฒด๋ฅผ ๋ฌธ์์ด๋ก ๋ณํ
ObjectMapper objectMapper = new ObjectMapper();
String jsonString = objectMapper.writeValueAsString(jsonNode);
// ๋ณํ๋ JSON ์ถ๋ ฅ
System.out.println(jsonString);
[Java/์๋ฐ] XML์ JSON์ผ๋ก ๋ณํํ๋ ๋ฐฉ๋ฒ
XML๊ณผ JSON์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์ ์กํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํ์์ ๋๋ค. ๋๋ก๋ XML ๋ฐ์ดํฐ๋ฅผ JSON์ผ๋ก ๋ณํํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ์ด๋ฅผ ์ํด Java์์๋ ๋ค์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์์ต
seoulitelab.tistory.com
์ด ์์ค๋ฅผ ์ฐธ๊ณ ํ์๋ค.
'์ฌ๋ณผ 'XmlMapper'๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค' ๋ผ๋ ๋ฉ์ธ์ง๊ฐ ๋จ๊ธฐ ๋๋ฌธ์ import ํด์ค์ผํ๋ค.
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformat-xml
ํด๋น ์ฌ์ดํธ์ ๋ค์ด๊ฐ์ ๋ฒ์ ์ ๊ณ ๋ฅธ ํ,
Gradle์ ํด๋ฆญํ๊ณ , ๋ณต์ฌํ์ฌ dependencies์ ์ถ๊ฐํด์ฃผ๋ฉด ๋๋ค.
implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.13.5'
๋๋ ์ผ๋จ 2.13.5 ๋ฒ์ ์ผ๋ก ๊ณจ๋๋ค.
cleanํ๊ณ buildํด์ค๋ค.
๋ฒ์ ์ค๋ฅ
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: cohttp://m.fasterxml.jackson.core.io.IOContext.streamReadConstraints()Lcom/fasterxml/jackson/core/StreamReadConstraints;] with root cause
์ด๋ฐ ์ค๋ฅ๊ฐ ๋๋ค.
์ด ์ค๋ฅ๋ Jackson ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ฒ์ ์ถฉ๋๋ก ์ธํด ๋ฐ์ํ๋ **NoSuchMethodError**์
๋๋ค.
ํนํ streamReadConstraints() ๋ฉ์๋๋ Jackson 2.15.0์์ ์ถ๊ฐ๋ ๊ธฐ๋ฅ์
๋๋ค.
ํ์ง๋ง ํ์ฌ ์ฌ์ฉ ์ค์ธ **jackson-core-2.13.5.jar**์์๋ ์ด ๋ฉ์๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
์ฆ, ์ด๋ค ์์กด์ฑ์ด 2.15.0์ ์๊ตฌํ๋๋ฐ, ์ค์ ๋ก๋ 2.13.5๋ฅผ ๋ก๋ํ๊ณ ์์ด์ ๋ฐ์ํ๋ ์ค๋ฅ์ ๋๋ค.
๋ผ๋ ์ฑ์งํผํฐ์ ๋ต๋ณ์ ๋ฐ์๋ค.
implementation 'com.fasterxml.jackson.core:jackson-databind:2.15.0'
implementation 'com.fasterxml.jackson.core:jackson-core:2.15.0'
implementation 'com.fasterxml.jackson.core:jackson-annotations:2.15.0'
implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.15.0'
์ด๋ ๊ฒ ๋ค์ ์ค์ ํด๋ณด์๋ค. ์ ๋์๋ค!!