When uploading virtual machine templates that include Raw Device Mappings (RDMs) to VMware Cloud Director (VCD), the operation fails, and the following error appears in the logs:
2025-03-06 14:45:22,928 | ERROR | pc-activity-pool-4 | EventManagerImpl | Listener failed to process event=VimUpdateEvent(modify,VirtualMachine,[vcId=########-####-####-####-############, moref=vm-12345]) | activity=(com.vmware.vcloud.vimproxy.internal.impl.PCEventProcessingActivity,urn:uuid: ########-####-####-####-############)
java.lang.ClassCastException: class com.vmware.vim.binding.impl.vim.vm.device.VirtualDiskImpl$RawDiskMappingVer1BackingInfoImpl cannot be cast to class com.vmware.vim.binding.vim.vm.device.VirtualDisk$FlatVer2BackingInfo (com.vmware.vim.binding.impl.vim.vm.device.VirtualDiskImpl$RawDiskMappingVer1BackingInfoImpl and com.vmware.vim.binding.vim.vm.device.VirtualDisk$FlatVer2BackingInfo are in unnamed module of loader java.net.FactoryURLClassLoader @59e5ddf)VMware Cloud Director 10.x
Templates that contain RDMs are not supported by VCD. RDMs provide direct access to physical storage devices, which is incompatible with VCD’s storage management model and architecture with vSphere.
Replace RDMs with virtual disks (VMDKs) for any virtual machines intended for use within VCD