diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java index eb3203e..6928bac 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java @@ -80,7 +80,10 @@ public class WordReportGenerationService { XWPFDocument doc = new XWPFDocument(is); addTableRows(doc, reportEntries, fileStatus.getFilename()); for (String placeholder : placeholders) { - replaceTextPlaceholders(doc, placeholder, getPlaceholderValue(placeholder, project, fileStatus, fileAttributePlaceholders)); + String placeholderValue = getPlaceholderValue(placeholder, project, fileStatus, fileAttributePlaceholders); + if(placeholderValue != null) { + replaceTextPlaceholders(doc, placeholder, placeholderValue); + } } return toByteArray(doc); } catch (IOException e) { @@ -127,7 +130,11 @@ public class WordReportGenerationService { } if (fileAttributePlaceholders.containsKey(placeholder)) { String id = fileAttributePlaceholders.get(placeholder); - return fileStatus.getFileAttributes().getAttributeIdToValue().get(id); + if(fileStatus.getFileAttributes() != null && fileStatus.getFileAttributes().getAttributeIdToValue() != null && fileStatus.getFileAttributes().getAttributeIdToValue().containsKey(id)) { + return fileStatus.getFileAttributes().getAttributeIdToValue().get(id); + } else { + return null; + } } throw new RuntimeException("unknown placeholder"); }