|
51 | 51 | import java.util.Iterator; |
52 | 52 | import java.util.List; |
53 | 53 | import java.util.Map; |
| 54 | +import java.util.Optional; |
54 | 55 | import java.util.logging.Logger; |
55 | 56 | import javax.ejb.EJB; |
56 | 57 | import javax.ejb.EJBException; |
@@ -1491,7 +1492,7 @@ public void handleDropBoxUpload(ActionEvent event) { |
1491 | 1492 | //datafiles = ingestService.createDataFiles(workingVersion, dropBoxStream, fileName, "application/octet-stream"); |
1492 | 1493 | CreateDataFileResult createDataFilesResult = FileUtil.createDataFiles(workingVersion, dropBoxStream, fileName, "application/octet-stream", null, null, systemConfig); |
1493 | 1494 | datafiles = createDataFilesResult.getDataFiles(); |
1494 | | - errorMessage = editDataFilesPageHelper.getHtmlErrorMessage(createDataFilesResult); |
| 1495 | + Optional.ofNullable(editDataFilesPageHelper.getHtmlErrorMessage(createDataFilesResult)).ifPresent(errorMessage -> errorMessages.add(errorMessage)); |
1495 | 1496 |
|
1496 | 1497 | } catch (IOException ex) { |
1497 | 1498 | this.logger.log(Level.SEVERE, "Error during ingest of DropBox file {0} from link {1}", new Object[]{fileName, fileLink}); |
@@ -1745,12 +1746,13 @@ public void uploadFinished() { |
1745 | 1746 | uploadedFiles.clear(); |
1746 | 1747 | uploadInProgress.setValue(false); |
1747 | 1748 | } |
1748 | | - if(errorMessage != null) { |
1749 | | - FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, BundleUtil.getStringFromBundle("dataset.file.uploadFailure"), errorMessage)); |
1750 | | - PrimeFaces.current().ajax().update(":messagePanel"); |
1751 | | - } |
| 1749 | + |
1752 | 1750 | // refresh the warning message below the upload component, if exists: |
1753 | 1751 | if (uploadComponentId != null) { |
| 1752 | + if(!errorMessages.isEmpty()) { |
| 1753 | + FacesContext.getCurrentInstance().addMessage(uploadComponentId, new FacesMessage(FacesMessage.SEVERITY_ERROR, BundleUtil.getStringFromBundle("dataset.file.uploadFailure"), editDataFilesPageHelper.consolidateHtmlErrorMessages(errorMessages))); |
| 1754 | + } |
| 1755 | + |
1754 | 1756 | if (uploadWarningMessage != null) { |
1755 | 1757 | if (existingFilesWithDupeContent != null || newlyUploadedFilesWithDupeContent != null) { |
1756 | 1758 | setWarningMessageForAlreadyExistsPopUp(uploadWarningMessage); |
@@ -1797,7 +1799,7 @@ public void uploadFinished() { |
1797 | 1799 | multipleDupesNew = false; |
1798 | 1800 | uploadWarningMessage = null; |
1799 | 1801 | uploadSuccessMessage = null; |
1800 | | - errorMessage = null; |
| 1802 | + errorMessages = new ArrayList<>(); |
1801 | 1803 | } |
1802 | 1804 |
|
1803 | 1805 | private String warningMessageForFileTypeDifferentPopUp; |
@@ -1948,7 +1950,7 @@ private void handleReplaceFileUpload(String fullStorageLocation, |
1948 | 1950 | } |
1949 | 1951 |
|
1950 | 1952 | private String uploadWarningMessage = null; |
1951 | | - private String errorMessage = null; |
| 1953 | + private List<String> errorMessages = new ArrayList<>(); |
1952 | 1954 | private String uploadSuccessMessage = null; |
1953 | 1955 | private String uploadComponentId = null; |
1954 | 1956 |
|
@@ -2020,7 +2022,11 @@ public void handleFileUpload(FileUploadEvent event) throws IOException { |
2020 | 2022 | // zip file. |
2021 | 2023 | CreateDataFileResult createDataFilesResult = FileUtil.createDataFiles(workingVersion, uFile.getInputStream(), uFile.getFileName(), uFile.getContentType(), null, null, systemConfig); |
2022 | 2024 | dFileList = createDataFilesResult.getDataFiles(); |
2023 | | - errorMessage = editDataFilesPageHelper.getHtmlErrorMessage(createDataFilesResult); |
| 2025 | + String createDataFilesError = editDataFilesPageHelper.getHtmlErrorMessage(createDataFilesResult); |
| 2026 | + if(createDataFilesError != null) { |
| 2027 | + errorMessages.add(createDataFilesError); |
| 2028 | + uploadComponentId = event.getComponent().getClientId(); |
| 2029 | + } |
2024 | 2030 |
|
2025 | 2031 | } catch (IOException ioex) { |
2026 | 2032 | logger.warning("Failed to process and/or save the file " + uFile.getFileName() + "; " + ioex.getMessage()); |
@@ -2127,7 +2133,7 @@ public void handleExternalUpload() { |
2127 | 2133 | //datafiles = ingestService.createDataFiles(workingVersion, dropBoxStream, fileName, "application/octet-stream"); |
2128 | 2134 | CreateDataFileResult createDataFilesResult = FileUtil.createDataFiles(workingVersion, null, fileName, contentType, fullStorageIdentifier, checksumValue, checksumType, systemConfig); |
2129 | 2135 | datafiles = createDataFilesResult.getDataFiles(); |
2130 | | - errorMessage = editDataFilesPageHelper.getHtmlErrorMessage(createDataFilesResult); |
| 2136 | + Optional.ofNullable(editDataFilesPageHelper.getHtmlErrorMessage(createDataFilesResult)).ifPresent(errorMessage -> errorMessages.add(errorMessage)); |
2131 | 2137 | } catch (IOException ex) { |
2132 | 2138 | logger.log(Level.SEVERE, "Error during ingest of file {0}", new Object[]{fileName}); |
2133 | 2139 | } |
|
0 commit comments