\r
import java.util.ArrayList;\r
import java.util.List;\r
+import java.util.regex.Pattern;\r
\r
import com.indexdata.pz2utils4jsf.errors.ErrorInterface;\r
import com.indexdata.pz2utils4jsf.errors.ErrorHelper;\r
public class CommandError extends Pazpar2ResponseData implements ErrorInterface {\r
\r
private static final long serialVersionUID = 8878776025779714122L;\r
+ private static Pattern xmlDeclaration = Pattern.compile("<\\?xml.*\\?>");\r
private ErrorCode applicationErrorCode;\r
private ErrorHelper errorHelper = null;\r
\r
* \r
* @param commandName The name of the command during which's execution the error was encountered\r
* @param exceptionName The (possibly loosely defined) name of the exception that was thrown\r
- * @param pazpar2ErrorXml The error document as created by Pazpar2 -- or, for some errors, by the \r
- * Pazpar2 client. \r
+ * @param pazpar2ErrorXml The error document as created by Pazpar2, or the Service Proxy or \r
+ * by the Pazpar2 client itself. \r
* @return\r
*/\r
public static String insertPazpar2ErrorXml (String commandName, String exceptionName, String pazpar2ErrorXml) {\r
errorXml.append(" <applicationerror>"+nl);\r
errorXml.append(" <commandname>" + commandName + "</commandname>"+nl);\r
errorXml.append(" <exception>" + XmlUtils.escape(exceptionName) + "</exception>"+nl); \r
- errorXml.append(pazpar2ErrorXml+nl); \r
+ errorXml.append(xmlDeclaration.matcher(pazpar2ErrorXml).replaceAll("")+nl); \r
errorXml.append(" </applicationerror>"+nl);\r
errorXml.append("</" + commandName + ">"+nl);\r
return errorXml.toString(); \r