Apache URIBuilderを使用して、Rest サービスのGET メソッドのクエリ文字列を作成しています。
@RequestMapping(value="/remote")
public Return getTest(Ordine ordine) throws Exception{
...
}
これは入力オブジェクトです:
public class Ordine{
private List<String> codici;
//..get...set..
}
この文字列リストをクエリ パラメータとして設定する方法がわかりません。
私はparamを2回設定しようとしました:
URIBuilder builder = new URIBuilder()
.setHost("localhost")
.setPort(8080)
.setScheme("http")
.setPath("/remote")
.setParameter("codici", codicilist.get(0))
.setParameter("codici", codicilist.get(1));
ただし、最初のパラメーターは2番目から上書きされます。次に、パラメータ名に [] を追加しようとしました:
URIBuilder builder = new URIBuilder()
.setHost("localhost")
.setPort(8080)
.setScheme("http")
.setPath("/remote")
.setParameter("codici[]", codicilist.get(0))
.setParameter("codici[]", codicilist.get(1));
ただし、「codici[]」という名前で送信されるだけで、最初のパラメーターは上書きされます。次に、カンマ区切りの値を試しました:
URIBuilder builder = new URIBuilder()
.setHost("localhost")
.setPort(8080)
.setScheme("http")
.setPath("/remote")
.setParameter("codici", String.join(",",codicilist));
しかし、失敗した場合...どうすればparamのリストを設定できますか?