こんにちは、サーブレットを使用してファイルを送信するために GWT を使用しています。
最初はファイルのみをサーバーに送信しようとしていました。それはうまくいきました。
af ormPanel に 3 つのリストボックスを追加しました。
private ListBox propertyNamelist = getListBox("propertyName");
private ListBox propertyTypeList = getListBox("propertyType");
private ListBox propertyValueList = getListBox("propertyValue");
private ListBox getListBox(String name){
listbox = new ListBox();
listbox.setName(name);
return listbox;
}
その後、FormPanel に追加されます。
formPanel.setWidget(propertyNamelist);
formPanel.setWidget(propertyTypeList);
formPanel.setWidget(propertyValueList);
formPanel.submit();
サーバー側。
try {
ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iterator = upload.getItemIterator(request);
while (iterator.hasNext()) {
FileItemStream item = iterator.next();
stream = item.openStream();
if (item.isFormField()) {
log.warning("Got a form field: " + item.getFieldName());
System.out.println(" chk fg " +item.getFieldName() +" = "+ Streams.asString(item.openStream()));
} else {
log.warning("Got an uploaded file: " + item.getFieldName()
+ ", name = " + item.getName());
fileName = item.getName();
mimetype = item.getContentType();
}
}
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
出力:
WARNING: Got a form field: propertyValue
Jun 11, 2012 11:37:55 AM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: /UploadFileServlet: org.apache.commons.fileupload.FileItemStream$ItemSkippedException
chk fg propertyValue = motivation
私によると、動機は listbox の最初の値であり、リストボックスPropertyValue
にはより多くの値があります。
そして、表示されるべきリストボックスは他にもあります。
これが起こっていることを理解できません。
注:これらのリストボックスは、サーバーに送信するファイルとサーバーを外部リポジトリに送信するファイルに関連しているため、RPCを介してリストボックスを送信できません。
誰か助けてください。