Java 使用Wicket上传文件
我想在Wicket中上传一个带有AJAX的文件。在我看来,Wicket不支持此功能。有可能吗?从Wicket示例中查看源代码,以便上传:。它有标准版本和ajax版本的示例。这种方法适用于我的完整ajax wicket应用程序。 抱歉,这是Scala语法,但应该可以很容易地转换回Java语法:Java 使用Wicket上传文件,java,ajax,file-upload,wicket,Java,Ajax,File Upload,Wicket,我想在Wicket中上传一个带有AJAX的文件。在我看来,Wicket不支持此功能。有可能吗?从Wicket示例中查看源代码,以便上传:。它有标准版本和ajax版本的示例。这种方法适用于我的完整ajax wicket应用程序。 抱歉,这是Scala语法,但应该可以很容易地转换回Java语法: import java.io.File import org.apache.wicket.markup.html.form.upload.FileUploadField import org.apache.
import java.io.File
import org.apache.wicket.markup.html.form.upload.FileUploadField
import org.apache.wicket.markup.html.form.Form
import org.apache.wicket.markup.html.WebPage
import org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink
import org.apache.wicket.ajax.AjaxRequestTarget
class TestPage extends WebPage {
val uploadForm = new Form("form")
val fileField = new FileUploadField("file")
uploadForm.add(fileField)
add(form)
add(new AjaxSubmitLink("submit", uploadForm) {
def onSubmit(target: AjaxRequestTarget, form: Form[_]) {
val upload = fileField.getFileUpload
if (upload != null) {
val file: File = upload.writeToTempFile
}
}
})
}
HTML:
上传
作为一个老问题的更新,现在似乎有可能:
它只有ajax进度条,并不完全是ajax。你是对的,我误解了你的问题。目前,核心wicket库无法实现这一点,但它已被写成一个问题。该问题指向一个示例,其中Wicket已通过iFrame完成,.Update:已作为的副本关闭。我听说这方面的改进正在进行中,但我最近没有查看。我以为它会出现在1.4版本中,但如果问题仍然存在,我想不会……Link返回404状态。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
<body>
<form wicket:id="form">
<input wicket:id="file" type="file"/>
</form>
<button wicket:id="submit">Upload</button>
</body>
</html>