From 2b16274c378babfb121a58fc3ae7f13b72ce22a3 Mon Sep 17 00:00:00 2001 From: gmantele <gmantele@ari.uni-heidelberg.de> Date: Thu, 19 Feb 2015 19:13:09 +0100 Subject: [PATCH] [UWS] URLs in XML attribute must not be encoded ; only <, & and " must be encoded. --- src/uws/job/serializer/XMLSerializer.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/uws/job/serializer/XMLSerializer.java b/src/uws/job/serializer/XMLSerializer.java index 4049a8b..15fe433 100644 --- a/src/uws/job/serializer/XMLSerializer.java +++ b/src/uws/job/serializer/XMLSerializer.java @@ -16,7 +16,7 @@ package uws.job.serializer; * You should have received a copy of the GNU Lesser General Public License * along with UWSLibrary. If not, see <http://www.gnu.org/licenses/>. * - * Copyright 2012,2014 - UDS/Centre de DonnĂ©es astronomiques de Strasbourg (CDS), + * Copyright 2012-2015 - UDS/Centre de DonnĂ©es astronomiques de Strasbourg (CDS), * Astronomisches Rechen Institut (ARI) */ @@ -38,7 +38,7 @@ import uws.service.request.UploadFile; * Lets serializing any UWS resource in XML. * * @author Grégory Mantelet (CDS;ARI) - * @version 4.1 (12/2014) + * @version 4.1 (02/2015) */ public class XMLSerializer extends UWSSerializer { private static final long serialVersionUID = 1L; @@ -152,7 +152,7 @@ public class XMLSerializer extends UWSSerializer { UWSUrl jlUrl = jobList.getUrl(); xml.append("\t\t<jobListRef name=\"").append(escapeXMLAttribute(jobList.getName())).append("\" href=\""); if (jlUrl != null && jlUrl.getRequestURL() != null) - xml.append(escapeURL(jlUrl.getRequestURL())); + xml.append(escapeXMLAttribute(jlUrl.getRequestURL())); xml.append("\" />\n"); } xml.append("\t</jobLists>\n"); @@ -167,7 +167,7 @@ public class XMLSerializer extends UWSSerializer { StringBuffer xml = new StringBuffer(getHeader()); xml.append("<jobs").append(getUWSNamespace(true)); - /* Note: NO ATTRIBUTE "name" IN THE XML SCHEMA! + /* NOTE: NO ATTRIBUTE "name" IN THE XML SCHEMA! * String name = jobsList.getName(); * if (name != null) * xml.append(" name=\"").append(escapeXMLAttribute(name)).append("\""); @@ -228,13 +228,13 @@ public class XMLSerializer extends UWSSerializer { StringBuffer xml = new StringBuffer("<jobref id=\""); xml.append(escapeXMLAttribute(job.getJobId())); - /* Note: NO ATTRIBUTE "runId" IN THE XML SCHEMA! + /* NOTE: NO ATTRIBUTE "runId" IN THE XML SCHEMA! * if (job.getRunId() != null && job.getRunId().length() > 0) * xml.append("\" runId=\"").append(escapeXMLAttribute(job.getRunId())); */ xml.append("\" xlink:href=\""); if (url != null) - xml.append(escapeURL(url)); + xml.append(escapeXMLAttribute(url)); xml.append("\">\n\t\t").append(getPhase(job, false)).append("\n\t</jobref>"); return xml.toString(); @@ -407,10 +407,10 @@ public class XMLSerializer extends UWSSerializer { if (result.getHref() != null){ if (result.getType() != null) xml.append(" xlink:type=\"").append(escapeXMLAttribute(result.getType())).append("\""); - xml.append(" xlink:href=\"").append(escapeURL(result.getHref())).append("\""); + xml.append(" xlink:href=\"").append(escapeXMLAttribute(result.getHref())).append("\""); } - /* Note: THE FOLLOWING ATTRIBUTES MAY PROVIDE USEFUL INFORMATION TO USERS, BUT THEY ARE NOT ALLOWED BY THE CURRENT UWS STANDARD. + /* NOTE: THE FOLLOWING ATTRIBUTES MAY PROVIDE USEFUL INFORMATION TO USERS, BUT THEY ARE NOT ALLOWED BY THE CURRENT UWS STANDARD. * HOWEVER, IF, ONE DAY, THEY ARE, THE FOLLOWING LINES SHOULD BE UNCOMNENTED. * * if (result.getMimeType() != null) -- GitLab