[vbox-dev] Fw: Setting HPET via SOAP

Yuriy Tretyakov tretyakoff_y at ukr.net
Thu Nov 27 09:26:48 GMT 2014


We need to run our code under python 3.1 that's why we need to use suds here. Anyway we may face this situation without python at all. I ran SOAP UI. I ran a list of command-one by one. 
I lock the machine and run ISession_getMachine. webserver returned new mutable machine ID.  
Runing ISession_getType for my session id - I got  
<vbox:ISession_getTypeResponse>          <returnval>WriteLock</returnval>       </vbox:ISession_getTypeResponse> 
So machine is in mutable state now, right? 
Runing IMachine_setHPETEnabled  for mutable ID          <_this>5f0fac6e7e0179b0-0000000000000011</_this>          <HPETEnabled>true</HPETEnabled> 
got error VirtualBox error: rc=0x80bb0002 The machine is not mutable (state is Saved) (0x80bb0002)</faultstring> 
Just for your information. It seems to me a little strange that when vbox server returning an error it used not the same value in returnval as my mutable machine id. It increased each time request being sent to server. Here is what SOAP ui shows: 
         <faultcode>SOAP-ENV:Client</faultcode> 
         <faultstring>VirtualBox error: rc=0x80bb0002 The machine is not mutable (state is Saved) (0x80bb0002)</faultstring>          <detail>             <vbox:RuntimeFault>                <resultCode>-2135228414</resultCode>                <returnval>5f0fac6e7e0179b0-0000000000000033</returnval>             </vbox:RuntimeFault>          </detail>       </SOAP-ENV:Fault> 


--- Исходное сообщение --- 
От кого: "Klaus Espenlaub" <klaus.espenlaub at oracle.com> 
Дата: 26 ноября 2014, 17:53:21 

On 26.11.2014 16:09, Yuriy Tretyakov wrote: 
Hi Klaus. Thank you for your quick answer! Sure, vm machine is turned off. I trying to turn HPET on after snapshot is restored (machine is down) but got this error. And yes , as I understand from SDK, such settings shall work with mutable machine. Setting RAM size works fine, but HPET failed. I specify that  IMachine_setCPUHotPlugEnabled doesn't work this way. Few month ago we were try to set videocapturing on and also no positive results. Could it be a defect with processing boolean values when we work with vboxwebsrv? Can't tell from here what's "going over the wire" with your code, but as long as the error message has the word "mutable" in it I wouldn't expect trouble with the parameters as such, more with the references. 

Is there a particular reason why you can't/don't want to use ZSI? It's what e.g. vboxshell.py uses if one selects the webservice. It gives a nice, direct python object interface to the API, and can also talk to the local API when it runs on the same system... 

Klaus 

Regards, Yuriy 

--- Исходное сообщение --- 
От кого: "Klaus Espenlaub" <klaus.espenlaub at oracle.com> 
Дата: 26 ноября 2014, 17:02:12 

Hi Yuriy, 
On 26.11.2014 15:42, Yuriy Tretyakov wrote: 

Hi Guys! Forum  moderator suggests me to contact somebody from developers to solve my problem faster than waiting answer on forum. 
I have a trouble setting boolean values via SOAP for VBOX. 
Actually, I need to set IMachine_setHPETEnabled to True programmatically, but IMachine_setCPUHotPlugEnabled also doesn't work. 
Trying to set these parameters always follows with Machine is not mutable error. But setting of memory like in SDK example works fine. 
What I'm actually do. I using suds SOAP client library for Python. 
This doesn't sound like a problem with specific bindings to me (never used suds though, only used ZSI as you can see in the samples in the SDK). From the symptoms you're using the wrong IMachine reference. On the other hand, I can't explain why setting the memory size with the same reference works, it's doing the exact same checks on the API implementation side. 

Are you sure that the snapshot you are restoring is an "offline" one, i.e. for a powered off VM? Otherwise the VM is in saved state, which means no significant reconfiguration is possible (but again, same rules for HPET and memory size...). 

Klaus  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.virtualbox.org/pipermail/vbox-dev/attachments/20141127/b85d2815/attachment.html>


More information about the vbox-dev mailing list