개발/JAVA

Atlassian confluence와 연동하기

쵸코푸들이장군 2018. 2. 10. 21:40

Atlassian confluence와 연동을 해야 했다.

기본적으로 JAVA와 연동할 때는 아래 git 에서 사용하는 걸 쓴다.

https://github.com/MWhyte/ConfluencePageEditter/blob/master/src/main/java/com/nigeeks/app/Main.java



위의 내용을 알맞게 수정해서 사용하면 되는데, 보통은 제목 등은 수정 하지 않고 안에 내용을 수정한다.


//get value

        JSONObject page = new JSONObject(pageObj);

        String originValue = page.getJSONObject("body").getJSONObject("storage").get("value").toString() ;

        System.out.println("origin:" + originValue);



기본 소스에서 위의 한 줄을 추가해 주었다.


이렇게 하면 일단 body > storage > value 값을 가지고 오게 되고 여기에 수정을 한 뒤, 또는 추가를 한 뒤


page.getJSONObject("body").getJSONObject("storage").put("value", originValue + "1234345345345345345345345");


이런식으로 수정을 해 준다.


따로 뒤에 내용을 업데이트 해주는 부분은 없어 보이므로, 



원래 값에 새로 추가한 값을 추가해주는 형식으로 했다.


또 값은 html tag를 달고 오는 형식이므로 수정도 그런식으로 해 주면 이쁘게 된다.




pom.xml의 경우,


<dependency>

<groupId>org.apache.httpcomponents</groupId>

<artifactId>httpclient</artifactId>

<version>4.5</version>

</dependency>

<dependency>

<groupId>org.apache.httpcomponents</groupId>

<artifactId>httpcore</artifactId>

<version>4.4.4</version>

</dependency>

<dependency>

            <groupId>commons-io</groupId>

            <artifactId>commons-io</artifactId>

            <version>2.4</version>

        </dependency>

        <dependency>

            <groupId>commons-lang</groupId>

            <artifactId>commons-lang</artifactId>

            <version>2.6</version>

        </dependency>

        <dependency>

            <groupId>org.json</groupId>

            <artifactId>json</artifactId>

            <version>20090211</version>

        </dependency>




이렇게 추가해 주었다.