diff --git a/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java b/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java index 46c02402ed..a614213620 100644 --- a/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java +++ b/azure-client-runtime/src/main/java/com/microsoft/azure/PagedList.java @@ -45,6 +45,9 @@ public PagedList() { */ public PagedList(Page page) { this(); + if (page == null) { + return; + } List retrievedItems = page.getItems(); if (retrievedItems != null) { items.addAll(retrievedItems); diff --git a/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java b/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java index 3e16e187ee..62400715e7 100644 --- a/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java +++ b/client-runtime/src/main/java/com/microsoft/rest/ServiceResponseBuilder.java @@ -141,6 +141,8 @@ public ServiceResponse build(Response response) throws E, IOExc return new ServiceResponse<>((T) buildBody(statusCode, responseBody), response); } else if (response.isSuccessful() && responseTypes.size() == 1) { return new ServiceResponse<>((T) buildBody(statusCode, responseBody), response); + } else if ("GET".equals(response.raw().request().method()) && statusCode == 404) { + return new ServiceResponse<>(null, response); } else { try { String responseContent = responseBody.string();