Index: lams_common/src/java/org/lamsfoundation/lams/questions/QuestionExporter.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/questions/QuestionExporter.java,v diff -u -r1.6 -r1.7 --- lams_common/src/java/org/lamsfoundation/lams/questions/QuestionExporter.java 11 May 2016 07:29:11 -0000 1.6 +++ lams_common/src/java/org/lamsfoundation/lams/questions/QuestionExporter.java 27 Aug 2016 05:16:18 -0000 1.7 @@ -20,7 +20,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.questions; import java.io.File; @@ -677,16 +676,18 @@ private void appendMaterialElements(Element materialElem, String text) { String[] answerParts = parseImages(text); for (String answerPart : answerParts) { - if (answerPart.startsWith(QuestionExporter.IMAGE_MARKER)) { - String imageName = answerPart.substring(QuestionExporter.IMAGE_MARKER.length()); - String imageType = "image/" + FileUtil.getFileExtension(imageName); - Element matimageElem = (Element) materialElem.appendChild(doc.createElement("matimage")); - matimageElem.setAttribute("imagtype", imageType); - matimageElem.setAttribute("uri", imageName); - } else { - Element mattextElem = (Element) materialElem.appendChild(doc.createElement("mattext")); - mattextElem.setAttribute("texttype", "text/html"); - mattextElem.appendChild(doc.createCDATASection(answerPart)); + if (StringUtils.isNotBlank(answerPart)) { + if (answerPart.startsWith(QuestionExporter.IMAGE_MARKER)) { + String imageName = answerPart.substring(QuestionExporter.IMAGE_MARKER.length()); + String imageType = "image/" + FileUtil.getFileExtension(imageName); + Element matimageElem = (Element) materialElem.appendChild(doc.createElement("matimage")); + matimageElem.setAttribute("imagtype", imageType); + matimageElem.setAttribute("uri", imageName); + } else { + Element mattextElem = (Element) materialElem.appendChild(doc.createElement("mattext")); + mattextElem.setAttribute("texttype", "text/html"); + mattextElem.appendChild(doc.createCDATASection(answerPart)); + } } } } Index: lams_common/src/java/org/lamsfoundation/lams/questions/QuestionParser.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/questions/QuestionParser.java,v diff -u -r1.10 -r1.11 --- lams_common/src/java/org/lamsfoundation/lams/questions/QuestionParser.java 11 May 2016 07:29:11 -0000 1.10 +++ lams_common/src/java/org/lamsfoundation/lams/questions/QuestionParser.java 27 Aug 2016 05:16:18 -0000 1.11 @@ -567,7 +567,7 @@ .getLength(); questionElementIndex++) { Node questionElement = questionElements.item(questionElementIndex); String elementName = questionElement.getNodeName(); - if ("mattext".equalsIgnoreCase(elementName)) { + if ("mattext".equalsIgnoreCase(elementName) && questionElement.getChildNodes().getLength() > 0) { // it is a HTML part String questionTextPart = ((CDATASection) questionElement.getChildNodes().item(0)).getData(); result.append(questionTextPart);