[1.7.0] FileUpload et autres champs
Bonjour,
J'ai un FileUpload dans un formulaire mais celui-ci ne contient pas qu'un FileUpload. Pour donner un exemple, c'est un formulaire qui contient à la fois un TextBox, un FileUpload et un bouton de validation. Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| VerticalPanel vPanel = new VerticalPanel();
TextBox text = new TextBox();
FileUpload upload = new FileUpload();
upload.setName("monUpload");
Button submit = new Button();
submit.setText("Submit");
vPanel.add(text);
vPanel.add(upload);
vPanel.add(submit);
FormPanel form = new FormPanel();
form.setAction(GWT.getModuleBaseURL() + "test");
form.setEncoding(FormPanel.ENCODING_MULTIPART);
form.setMethod(FormPanel.METHOD_POST);
form.addSubmitCompleteHandler(
new FormPanel.SubmitCompleteHandler() {
@Override
public void onSubmitComplete(SubmitCompleteEvent event) {
Window.alert(event.getResults());
}
}
);
form.add(vPanel);
RootPanel.get().add(form);
submit.addClickHandler(
new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
form.submit();
}
}
); |
Mais lorsque je fais mon traitement dans ma servlet, je ne vois qu'un seul élément :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| @SuppressWarnings("unchecked")
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String retour = "";
try {
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List<FileItem> items = upload.parseRequest(request);
for (FileItem item : items) {
retour = retour.concat(item.getFieldName());
}
} catch (FileUploadException e) {
e.printStackTrace();
}
response.setContentType("text/plain");
response.getWriter().write(retour);
} |
Je pense que c'est dû au MultiPart mais je ne maîtrise pas trop ça...
Pouvez-vous m'aider ?