diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ArtifactsBusinessLogic.java b/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ArtifactsBusinessLogic.java
index 65260c1..62f62f1 100644
--- a/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ArtifactsBusinessLogic.java
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ArtifactsBusinessLogic.java
@@ -4803,17 +4803,11 @@
                 log.debug(FAILED_UPLOAD_ARTIFACT_TO_COMPONENT, componentType, componentUuid, actionResult
                         .right()
                         .value());
-                errorWrapper.setInnerElement(actionResult.right().value());
+                return Either.right(actionResult.right().value());
             }
+            return Either.left(actionResult.left().value().left().value());
         }
-        if (errorWrapper.isEmpty()) {
-            uploadArtifact = actionResult.left().value().left().value();
-            uploadArtifactResult = Either.left(uploadArtifact);
-        }
-        else {
-            uploadArtifactResult = Either.right(errorWrapper.getInnerElement());
-        }
-        return uploadArtifactResult;
+        return Either.right(errorWrapper.getInnerElement());
     }
     /**
      * upload an artifact to a resource instance by UUID
