2015-06-11 3 views
0

У меня проблема с конструктором FileUploadField. Думаю, я путешествовал вовремя. Таким образом, после миграции в калитку 6 этот конструктор больше не возможно:FileUploadField конструктор в калитки 6

FileUploadField uploadField = new FileUploadField("browseFile", new Model<FileUpload>()); 

После удаления new Model<FileUpload>() я получил известная ошибка:

Caused by: org.apache.wicket.WicketRuntimeException: No get method defined for class: class pl.thetis.beans.service.TicketComplete expression: browseFile

Я заметил, что второй конструктор

public FileUploadField(final String id, IModel<List<FileUpload>> model) 
{ 
    super(id, model); 
} 

Unfortunetly I не знаю, как это создать.

Я пришел к этому решению, но я думаю, что его противный

List list = new LinkedList<FileUpload>(); 
FileUploadField uploadField = new FileUploadField("browseFile", new Model<FileUpload>().ofList(list)); 

Если я объявляю список, как List<FileUpload> он не работает.

ответ

1

Попробуйте с new FileUploadField("browseFile", new ListModel<FileUpload>(yourList));.

Теперь он использует список, поэтому можно использовать HTML5 <input type="file" multiple>, то есть вы можете загружать сразу несколько файлов с помощью современных браузеров.

+0

Да, я читал об этом. Спасибо за это решение, не знал о ListModel. Это лучшее решение. – ojciecmatki