diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index 0a9d9c4b8c5..06c68c4e1b2 100644 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -30,6 +30,7 @@ import java.util.TimeZone; import javax.inject.Inject; +import org.apache.commons.collections.CollectionUtils; import org.apache.cloudstack.acl.ControlledEntity; import org.apache.cloudstack.acl.ControlledEntity.ACLType; import org.apache.cloudstack.affinity.AffinityGroup; @@ -504,7 +505,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } snapshotResponse.setTags(tagResponses); @@ -789,7 +790,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } ipResponse.setTags(tagResponses); @@ -831,7 +832,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } lbResponse.setTags(tagResponses); @@ -1118,7 +1119,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } response.setTags(tagResponses); @@ -2071,7 +2072,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } response.setTags(tagResponses); @@ -2157,7 +2158,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } response.setTags(tagResponses); @@ -2208,7 +2209,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } response.setTags(tagResponses); @@ -2644,6 +2645,8 @@ public class ApiResponseHelper implements ResponseGenerator { @Override public ResourceTagResponse createResourceTagResponse(ResourceTag resourceTag, boolean keyValueOnly) { ResourceTagJoinVO rto = ApiDBUtils.newResourceTagView(resourceTag); + if(rto == null) + return null; return ApiDBUtils.newResourceTagResponse(rto, keyValueOnly); } @@ -2752,7 +2755,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses, tagResponse); } response.setTags(tagResponses); response.setObjectName("vpc"); @@ -2943,7 +2946,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses,tagResponse); } response.setTags(tagResponses); response.setObjectName("staticroute"); @@ -3511,7 +3514,7 @@ public class ApiResponseHelper implements ResponseGenerator { List tagResponses = new ArrayList(); for (ResourceTag tag : tags) { ResourceTagResponse tagResponse = createResourceTagResponse(tag, true); - tagResponses.add(tagResponse); + CollectionUtils.addIgnoreNull(tagResponses,tagResponse); } lbResponse.setTags(tagResponses);