実装

Entityにマッピング

200以外のレスポンスだったり、JSONなのにtext/htmlだったりするとNULLが帰ってくる。

XMLをPOSTする

import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.client.RestTemplate;

import java.io.IOException;

public class RestTemplateTest {

   public static void main(String[] args) throws IOException {
       String xmlString = "<?xml version=\"1.0\" encoding=\"utf-8\"?><AvailReq><hotelid>123</hotelid></AvailReq>";
       RestTemplate restTemplate =  new RestTemplate();
       HttpHeaders headers = new HttpHeaders();
       headers.setContentType(MediaType.APPLICATION_XML);
       HttpEntity<String> request = new HttpEntity<String>(xmlString, headers);
       final ResponseEntity<String> response = restTemplate.postForEntity("http://www.rutake.com/", request, String.class);
   }

}

例外

繋がらないorg.springframework.web.client.ResourceAccessException
200以外org.springframework.web.client.HttpClientErrorException: 400 Bad Request

テスト

MockRestServiceServerを使うとレスポンスを偽装できる。


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-10-14 (金) 13:16:52