wicket 1.4.8 の fileUploadField に関するクエリはほとんどありません。ユーザーが一度に 1 つのファイルをアップロードできるようにしたいのですが、フォームを送信する前に多くのファイルをアップロードできるようにする必要があります。
- を含めました。ユーザーは一度に 1 つのファイルを選択し、ページにサムネイルとして表示します。「Choose Image」ボタンでの動作をシミュレートしています。その後、別のファイルを選択できます。では、フォーム送信時にウィケットコントローラーでこれらの複数のファイルをすべて取得するにはどうすればよいですか?
2.Googleまたはウィケットサイトで入手可能なfileUploadFieldの例のほとんどには、以下のコードスニペットがあります。ここで明確にされていないことはほとんどありません。
2.1. getUploadFolder() とは何ですか。ソースファイルのパスですか?または目的地へのパスですか?ユーザーがモバイル デバイスからファイルをアップロードできるようにしています。では、それがソース パスである場合、私の場合はどのように機能しますか?
2.1.2. また、ファイルをローカル ディスクまたはサーバー側に保存したくありません。ファイル データを byte[] に変換し、ダウンストリームに送信してさらに処理する必要があります。fileUploadField または MultiFileUpload でそれを行うことはできますか?
for (FileUpload upload : uploads)
{
// Create a new file
File newFile = new File(getUploadFolder(), upload.getClientFileName());
// Check new file, delete if it already existed
checkFileExists(newFile);
try
{
// Save to new file
newFile.createNewFile();
upload.writeTo(newFile);
UploadPage.this.info("saved file: " + upload.getClientFileName());
}
catch (Exception e)
{
throw new IllegalStateException("Unable to write file", e);
}
}