fix moved fix closer to the root of the problem
@@ -23,7 +23,15 @@ import org.apache.hop.core.encryption.Encr;
import org.apache.hop.core.exception.HopException;
import org.apache.hop.core.exception.HopXmlException;
import org.apache.hop.core.xml.XmlHandler;
-import org.apache.hop.metadata.api.*;
+import org.apache.hop.metadata.api.HopMetadataObject;
+import org.apache.hop.metadata.api.HopMetadataProperty;
+import org.apache.hop.metadata.api.HopMetadataWrapper;
+import org.apache.hop.metadata.api.IEnumHasCode;
+import org.apache.hop.metadata.api.IEnumHasCodeAndDescription;
+import org.apache.hop.metadata.api.IHopMetadata;
+import org.apache.hop.metadata.api.IHopMetadataObjectFactory;
+import org.apache.hop.metadata.api.IHopMetadataProvider;
+import org.apache.hop.metadata.api.IIntCodeConverter;
import org.apache.hop.metadata.util.ReflectionUtil;
import org.w3c.dom.Node;
@@ -368,7 +376,6 @@ public class XmlMetadataUtil {
} else {
groupNode = XmlHandler.getSubNode(node, groupKey);
}
- if (tagNode != null) {
Object value =
deSerializeFromXml(
object,
@@ -404,7 +411,6 @@ public class XmlMetadataUtil {
}
}
}
- }
return object;
}
@@ -533,7 +539,7 @@ public class XmlMetadataUtil {
//
List<Object> list = new ArrayList<>();
List<Node> itemNodes = XmlHandler.getNodes(groupNode, tag);
- if (inlineListTags.length > 0) {
+ if (inlineListTags.length > 0 && itemNodes.size() > 0) {
// Old XML serialization format where everything is just dumped into the same tag.
// See also HopMetadataProperty.inlineListTags
//
