Index: lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java =================================================================== diff -u -r9352c0f9470d3fd142e688234b7946d025ec0afb -rf429d1b9fef45cbe7a91454d563472f4ae036d09 --- lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java (.../LessonManagerServlet.java) (revision 9352c0f9470d3fd142e688234b7946d025ec0afb) +++ lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java (.../LessonManagerServlet.java) (revision f429d1b9fef45cbe7a91454d563472f4ae036d09) @@ -28,6 +28,7 @@ import javax.xml.transform.TransformerConfigurationException; import javax.xml.transform.TransformerException; +import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import org.lamsfoundation.lams.gradebook.GradebookUserLesson; @@ -926,9 +927,10 @@ String lastName = null; String email = null; if (firstNames != null) { - firstName = firstNameArray[i]; - lastName = lastNameArray[i]; - email = emailArray[i]; + //unescape values passed from the external server. Works OK even if the values were not escaped + firstName = StringEscapeUtils.unescapeCsv(firstNameArray[i]); + lastName = StringEscapeUtils.unescapeCsv(lastNameArray[i]); + email = StringEscapeUtils.unescapeCsv(emailArray[i]); } if (StringUtils.isNotBlank(userName)) { @@ -943,9 +945,10 @@ String lastName = null; String email = null; if (firstNames != null) { - firstName = firstNameArray[i]; - lastName = lastNameArray[i]; - email = emailArray[i]; + //unescape values passed from the external server. Works OK even if the values were not escaped + firstName = StringEscapeUtils.unescapeCsv(firstNameArray[i]); + lastName = StringEscapeUtils.unescapeCsv(lastNameArray[i]); + email = StringEscapeUtils.unescapeCsv(emailArray[i]); } if (StringUtils.isNotBlank(userName)) {