Witam, mam problem z przesyłaniem plików za pomocą biblioteki FileUpload z frameworka GWT.
Swój program oparlem o przyklad stad http://www.gwtproject.org/javadoc/latest/com/google/gwt/user/client/ui/FileUpload.html
Podany poniżej kod jest częścią większego skryptu ale zęby nie zaśmiecać treści usunelem zbędne linijki.
Kompilator nie zwraca żadnych błędów.
Po probie przesłania plików funkcja event.getResult() zwraca komunikat o treści
<h1>Directory: /img/</h1><table border="0"><tbody><tr><td><a href="/img/../">Parent Directory</a></td><td></td><td></td></tr>
<tr><td><a href="/img/pjwstk1.jpg">pjwstk1.jpg </a></td><td align="right">68217 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk2.jpg">pjwstk2.jpg </a></td><td align="right">68844 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk3.jpg">pjwstk3.jpg </a></td><td align="right">68895 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk4.jpg">pjwstk4.jpg </a></td><td align="right">68758 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk5.jpg">pjwstk5.jpg </a></td><td align="right">68845 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk6.jpg">pjwstk6.jpg </a></td><td align="right">68852 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk7.jpg">pjwstk7.jpg </a></td><td align="right">68682 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk8.jpg">pjwstk8.jpg </a></td><td align="right">68857 bytes </td><td>2013-10-20 19:46:13</td></tr>
<tr><td><a href="/img/pjwstk9.jpg">pjwstk9.jpg </a></td><td align="right">68855 bytes </td><td>2013-10-20 21:05:42</td></tr>
</tbody></table>
Jest to jakby tablica w htmlu z plikami znajdującymi się w katalogu img do którego chce przesłać plik: form.setAction("img/");
Folder img oczywiście posiada pełne prawa dostępu chmod 777
Struktura katalogów prezentuje sie następująco:
war
|
-img/
|
-index.html
Folder img/ oraz index.html są w tym samym katalogu
public class Gallery implements EntryPoint {
private VerticalPanel mainPanel = new VerticalPanel();
private VerticalPanel formPanel = new VerticalPanel();
private FormPanel form = new FormPanel();
private FileUpload upload = new FileUpload();
private Button submitButton = new Button("Submit");
private TextBox pathTextBox = new TextBox();
public void onModuleLoad() {
form.setAction("img/");
form.setEncoding(FormPanel.ENCODING_MULTIPART);
form.setMethod(FormPanel.METHOD_POST);
formPanel.add(form);
formPanel.add(pathTextBox);
formPanel.add(submitButton);
form.add(upload);
upload.setName("uploadFormElement");
pathTextBox.setName("textBoxFormElement");
mainPanel.add(formPanel);
RootPanel.get("Gallery").add(mainPanel);
form.addSubmitHandler(new FormPanel.SubmitHandler() {
public void onSubmit(SubmitEvent event) {
// TODO Auto-generated method stub
}
});
form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
public void onSubmitComplete(SubmitCompleteEvent event) {
Window.alert(event.getResults());
}
});
submitButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
form.submit();
}
});
}
}