Skip to content

Commit 4d4bc2b

Browse files
authored
TCDICORE-498: fix NPE on file upload when internalUploadModel is null after page deserialization (#49)
1 parent f35c917 commit 4d4bc2b

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

forms/src/main/java/org/devgateway/toolkit/forms/wicket/components/form/FileInputBootstrapFormComponentWrapper.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -535,6 +535,15 @@ private void addBootstrapFileInputComponent() {
535535
protected void onSubmit(final AjaxRequestTarget target) {
536536
super.onSubmit(target);
537537

538+
// internalUploadModel is transient; after page deserialization it will
539+
// be null. Re-sync it from this component's own (non-transient) model
540+
// slot, where the same ListModel instance is still stored.
541+
if (internalUploadModel == null) {
542+
internalUploadModel = (IModel<
543+
List<FileUpload>
544+
>) getDefaultModel();
545+
}
546+
538547
List<FileUpload> fileUploads = internalUploadModel.getObject();
539548
try {
540549
// Clear any feedback messages accumulated from previous failed submissions

0 commit comments

Comments
 (0)