Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.0.0
Description
When creating an instance using the default network I get an NPE because the rangeIPv4 for the default network is null. It seems this is a valid response from the API now (it may not have been in the past, all legacy default networks had an IP range).
Relevant log snippets:
Wire log of response:
11:13:46.682 DEBUG [main] jclouds.wire - << "{[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "kind": "compute#network",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "id": "2880581387445067991",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "creationTimestamp": "2016-09-30T05:44:40.283-07:00",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "name": "default",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "description": "Default network for the project",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "selfLink": "https://www.googleapis.com/compute/v1/projects/project-name/global/networks/default",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "autoCreateSubnetworks": true,[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "subnetworks": [[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "https://www.googleapis.com/compute/v1/projects/project-name/regions/asia-east1/subnetworks/default",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "https://www.googleapis.com/compute/v1/projects/project-name/regions/us-central1/subnetworks/default",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "https://www.googleapis.com/compute/v1/projects/project-name/regions/europe-west1/subnetworks/default",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "https://www.googleapis.com/compute/v1/projects/project-name/regions/us-west1/subnetworks/default",[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " "https://www.googleapis.com/compute/v1/projects/project-name/regions/us-east1/subnetworks/default"[\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << " ][\n]" 11:13:46.682 DEBUG [main] jclouds.wire - << "}[\n]"
NPE:
11:13:47.589 ERROR [main] org.jclouds.http.functions.ParseJson - Error parsing input: Null rangeIPv4 java.lang.NullPointerException: Null rangeIPv4 at org.jclouds.googlecomputeengine.domain.AutoValue_Network.<init>(AutoValue_Network.java:45) ~[google-compute-engine-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.googlecomputeengine.domain.Network.create(Network.java:58) ~[google-compute-engine-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_73] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_73] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_73] at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_73] at com.google.common.reflect.Invokable$MethodInvokable.invokeInternal(Invokable.java:197) ~[guava-19.0.jar:na] at com.google.common.reflect.Invokable.invoke(Invokable.java:102) ~[guava-19.0.jar:na] at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.newInstance(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:224) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:204) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at com.google.gson.Gson.fromJson(Gson.java:810) ~[gson-2.3.1.jar:na] at com.google.gson.Gson.fromJson(Gson.java:775) ~[gson-2.3.1.jar:na] at com.google.gson.Gson.fromJson(Gson.java:724) ~[gson-2.3.1.jar:na] at org.jclouds.json.internal.GsonWrapper.fromJson(GsonWrapper.java:42) ~[jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:83) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:77) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:62) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:42) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44) [jclouds-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT] at org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)