diff --git a/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java index 6d8a8ab5527..54d1ca164e2 100644 --- a/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java @@ -81,14 +81,18 @@ public class VolumeJoinDaoImpl extends GenericDaoBase implem volResponse.setZoneId(volume.getDataCenterUuid()); volResponse.setZoneName(volume.getDataCenterName()); - volResponse.setVolumeType(volume.getVolumeType().toString()); + if (volume.getVolumeType() != null) { + volResponse.setVolumeType(volume.getVolumeType().toString()); + } volResponse.setDeviceId(volume.getDeviceId()); long instanceId = volume.getVmId(); if (instanceId > 0 && volume.getState() != Volume.State.Destroy) { volResponse.setVirtualMachineId(volume.getVmUuid()); volResponse.setVirtualMachineName(volume.getVmName()); - volResponse.setVirtualMachineState(volume.getVmState().toString()); + if (volume.getVmState() != null) { + volResponse.setVirtualMachineState(volume.getVmState().toString()); + } if (volume.getVmDisplayName() != null) { volResponse.setVirtualMachineDisplayName(volume.getVmDisplayName()); } else { @@ -96,7 +100,9 @@ public class VolumeJoinDaoImpl extends GenericDaoBase implem } } - volResponse.setProvisioningType(volume.getProvisioningType().toString()); + if (volume.getProvisioningType() != null) { + volResponse.setProvisioningType(volume.getProvisioningType().toString()); + } // Show the virtual size of the volume volResponse.setSize(volume.getSize()); @@ -105,7 +111,9 @@ public class VolumeJoinDaoImpl extends GenericDaoBase implem volResponse.setMaxIops(volume.getMaxIops()); volResponse.setCreated(volume.getCreated()); - volResponse.setState(volume.getState().toString()); + if (volume.getState() != null) { + volResponse.setState(volume.getState().toString()); + } if (volume.getState() == Volume.State.UploadOp) { // com.cloud.storage.VolumeHostVO volumeHostRef = // ApiDBUtils.findVolumeHostRef(volume.getId(),