次のようなhtmlフォームがあります。
<div class="field>
<input id="product_name" name="product[name]" size="30" type="text"/>
</div>
<div class="field>
<input id="product_picture" name="product[picture]" size="30" type="file"/>
</div>
製品の作成を自動化するJavaモジュールを作成したいと思います。これが私がすでに持っているものです:
HttpHost host = new HttpHost("localhost", 3000, "http");
HttpPost httpPost = new HttpPost("/products");
List<BasicNameValuePair> data = new ArrayList<BasicNameValuePair>();
data.add(new BasicNameValuePair("product[name]", "Product1"));
UrlEncodedFormEntity entity = new UrlEncodedFormEntity(data, "UTF-8");
httpPost.setEntity(entity);
HttpResponse postResponse = httpClient.execute(host, httpPost);
これは正常に機能し、「Product1」という名前の新しい製品を作成できます。しかし、アップロード部分の処理方法がわかりません。私はこのように見えるものが欲しいです:
data.add(new BasicNameValuePair("product[name]", "Product1"));
ただし、「Product1」の代わりにファイルです。文字列しかないというHttpClientのドキュメントを読みました。
アップロード部分の処理方法を知っている人はいますか?