diff --git a/PLUGIN-INF/metadata_XmlFormatValidationPlugin.xml b/PLUGIN-INF/metadata_XmlFormatValidationPlugin.xml index c5fb78ab8787713daeebd9bbc46f4e434df1b29e..945efe01ee64bd9c3d7fd05323f1709f801256ac 100644 --- a/PLUGIN-INF/metadata_XmlFormatValidationPlugin.xml +++ b/PLUGIN-INF/metadata_XmlFormatValidationPlugin.xml @@ -56,7 +56,7 @@ </fr:x_form> </pl:initParameters> <pl:description>SLUB Formatvalidation Plugin for XML</pl:description> - <pl:version>0.01</pl:version> + <pl:version>0.02</pl:version> <pl:materialType>DIGITAL</pl:materialType> <pl:module>Preservation</pl:module> <pl:generalType>TASK</pl:generalType> diff --git a/java/org/slub/rosetta/dps/repository/plugin/XmlFormatValidationPlugin.java b/java/org/slub/rosetta/dps/repository/plugin/XmlFormatValidationPlugin.java index 5a1bfd01e5aafa69635d6defc98e1eb5c6314eb8..7df1c73f17922323a6a5aa70abe0a3f9fba84ea0 100644 --- a/java/org/slub/rosetta/dps/repository/plugin/XmlFormatValidationPlugin.java +++ b/java/org/slub/rosetta/dps/repository/plugin/XmlFormatValidationPlugin.java @@ -36,6 +36,7 @@ import java.io.File; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; +import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -396,7 +397,23 @@ public class XmlFormatValidationPlugin implements FormatValidationPlugin { @Override public List<String> getErrors() { - return resultHandle.getErrors(); + List<String> truncated = new ArrayList<String>(); + int chars=0; + /* workaround for Rosetta Issue https://support.proquest.com/500Do0000083LJkIAM + * truncate to ensure not more than 2000 chars used, to + */ + for (String e: resultHandle.getErrors()) { + if ( (chars+ e.length()) < 1900 ) { + truncated.add( e ); + chars+=e.length()+1; // +1 for line ending + } else { + truncated.add ("... (the full error is truncated, because Rosetta limits, see Rosetta log for detailed output)"); + log.info("truncated errors in getError"); + break; + } + } + return truncated; + } @Override