vmware / vsphere-automation-sdk-java

Java samples, language bindings, and API reference documentation for vSphere, VMC, and NSX-T using the VMware REST API
MIT License
210 stars 134 forks source link

suspendToMemorySupported missing in VirtualMachineCapability class inside vim25.jar #172

Closed yuefengliu1 closed 1 year ago

yuefengliu1 commented 1 year ago

Description

suspendToMemorySupported is added to VirtualMachineCapability class since vSphere API 7.0.2.0, but it is missing in the VirtualMachineCapability class in vim25.jar included in vsphere-automation-sdk.

See https://vdc-download.vmware.com/vmwb-repository/dcr-public/bf660c0a-f060-46e8-a94d-4b5e6ffc77ad/208bc706-e281-49b6-a0ce-b402ec19ef82/SDK/vsphere-ws/docs/ReferenceGuide/vim.vm.Capability.html

Environment

Steps or code snippet to reproduce

Actual behavior

21:28:58.417Z [collector-worker-275-27] ERROR c.f.c.d.esxi.EsxiSoapDeviceCollector - Connection error ocured while connecting to XXXXX : javax.xml.ws.soap.SOAPFaultException: Unmarshalling Error: unexpected element (uri:"urn:vim25", local:"suspendToMemorySupported"). Expected elements are <{urn:vim25}guestAutoLockSupported>,<{urn:vim25}consolePreferencesSupported>,<{urn:vim25}npivWwnOnNonRdmVmSupported>,<{urn:vim25}vPMCSupported>,<{urn:vim25}snapshotConfigSupported>,<{urn:vim25}seSparseDiskSupported>,<{urn:vim25}settingVideoRamSizeSupported>,<{urn:vim25}virtualMmuUsageSupported>,<{urn:vim25}vmNpivWwnUpdateSupported>,<{urn:vim25}multipleSnapshotsSupported>,<{urn:vim25}bootRetryOptionsSupported>,<{urn:vim25}virtualMmuUsageIgnored>,<{urn:vim25}vmNpivWwnDisableSupported>,<{urn:vim25}vmNpivWwnSupported>,<{urn:vim25}snapshotOperationsSupported>,<{urn:vim25}swapPlacementSupported>,<{urn:vim25}quiescedSnapshotsSupported>,<{urn:vim25}toolsSyncTimeSupported>,<{urn:vim25}diskOnlySnapshotOnSuspendedVMSupported>,<{urn:vim25}settingScreenResolutionSupported>,<{urn:vim25}featureRequirementSupported>,<{urn:vim25}virtualExecUsageIgnored>,<{urn:vim25}settingDisplayTopologySupported>,<{urn:vim25}lockSnapshotsSupported>,<{urn:vim25}disableSnapshotsSupported>,<{urn:vim25}recordReplaySupported>,<{urn:vim25}nestedHVSupported>,<{urn:vim25}poweredOffSnapshotsSupported>,<{urn:vim25}bootOptionsSupported>,<{urn:vim25}diskSharesSupported>,<{urn:vim25}hostBasedReplicationSupported>,<{urn:vim25}poweredOnMonitorTypeChangeSupported>,<{urn:vim25}perVmEvcSupported>,<{urn:vim25}memoryReservationLockSupported>,<{urn:vim25}cpuFeatureMaskSupported>,<{urn:vim25}multipleCoresPerSocketSupported>,<{urn:vim25}changeTrackingSupported>,<{urn:vim25}memorySnapshotsSupported>,<{urn:vim25}revertToSnapshotSupported>,<{urn:vim25}s1AcpiManagementSupported>,<{urn:vim25}secureBootSupported>,<{urn:vim25}toolsAutoUpdateSupported> javax.xml.ws.soap.SOAPFaultException: Unmarshalling Error: unexpected element (uri:"urn:vim25", local:"suspendToMemorySupported"). Expected elements are <{urn:vim25}guestAutoLockSupported>,<{urn:vim25}consolePreferencesSupported>,<{urn:vim25}npivWwnOnNonRdmVmSupported>,<{urn:vim25}vPMCSupported>,<{urn:vim25}snapshotConfigSupported>,<{urn:vim25}seSparseDiskSupported>,<{urn:vim25}settingVideoRamSizeSupported>,<{urn:vim25}virtualMmuUsageSupported>,<{urn:vim25}vmNpivWwnUpdateSupported>,<{urn:vim25}multipleSnapshotsSupported>,<{urn:vim25}bootRetryOptionsSupported>,<{urn:vim25}virtualMmuUsageIgnored>,<{urn:vim25}vmNpivWwnDisableSupported>,<{urn:vim25}vmNpivWwnSupported>,<{urn:vim25}snapshotOperationsSupported>,<{urn:vim25}swapPlacementSupported>,<{urn:vim25}quiescedSnapshotsSupported>,<{urn:vim25}toolsSyncTimeSupported>,<{urn:vim25}diskOnlySnapshotOnSuspendedVMSupported>,<{urn:vim25}settingScreenResolutionSupported>,<{urn:vim25}featureRequirementSupported>,<{urn:vim25}virtualExecUsageIgnored>,<{urn:vim25}settingDisplayTopologySupported>,<{urn:vim25}lockSnapshotsSupported>,<{urn:vim25}disableSnapshotsSupported>,<{urn:vim25}recordReplaySupported>,<{urn:vim25}nestedHVSupported>,<{urn:vim25}poweredOffSnapshotsSupported>,<{urn:vim25}bootOptionsSupported>,<{urn:vim25}diskSharesSupported>,<{urn:vim25}hostBasedReplicationSupported>,<{urn:vim25}poweredOnMonitorTypeChangeSupported>,<{urn:vim25}perVmEvcSupported>,<{urn:vim25}memoryReservationLockSupported>,<{urn:vim25}cpuFeatureMaskSupported>,<{urn:vim25}multipleCoresPerSocketSupported>,<{urn:vim25}changeTrackingSupported>,<{urn:vim25}memorySnapshotsSupported>,<{urn:vim25}revertToSnapshotSupported>,<{urn:vim25}s1AcpiManagementSupported>,<{urn:vim25}secureBootSupported>,<{urn:vim25}toolsAutoUpdateSupported>

Expected behavior

No marshalling error

kunal-pmj commented 1 year ago

vsphere-automation-sdk-java is not the delivery channel for vim25.jar. The library is used in sample/utility code alone and NOT packaged as a versioned deliverable. i.e. vsphere-automation-sdk-java compatible with vSphere version 8.0 may not contain vim25.jar compatible with vSphere 8.0.

To latest version of vim25.jar can be obtained from : https://developer.vmware.com/web/sdk/8.0/vsphere-management

Thanks Kunal

yuefengliu1 commented 1 year ago

the vim25.jar in [vsphere-automation-sdk-java] contains class definition of "ArrayOfHostDataTransportConnectionInfo", but vim25.jar in "https://developer.vmware.com/web/sdk/8.0/vsphere-management" does not.

if [vsphere-automation-sdk-java] is not the delivery channel for vim25.jar, why does it contain ArrayOfHostDataTransportConnectionInfo.class that cannot be found in https://developer.vmware.com/web/sdk/8.0/vsphere-management ?