[vbox-dev] Issues in starting a VM

Sentayehu Seifu Sentayehu.Seifu at Sun.COM
Fri Apr 16 10:10:00 GMT 2010


On 15/04/2010 21:17, vbox-dev-request at virtualbox.org wrote:
> Send vbox-dev mailing list submissions to
> 	vbox-dev at virtualbox.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://vbox.innotek.de/mailman/listinfo/vbox-dev
> or, via email, send a message with subject or body 'help' to
> 	vbox-dev-request at virtualbox.org
>
> You can reach the person managing the list at
> 	vbox-dev-owner at virtualbox.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of vbox-dev digest..."
>
>
> Today's Topics:
>
>     1. Issue with starting a VM (AMARNATH, Balachandar)
>     2. Issues in starting a VM (AMARNATH, Balachandar)
>     3. Exception calling IMachine.getName() through java	webservice
>        API (Gerry Egan)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 15 Apr 2010 16:03:39 +0530
> From: "AMARNATH, Balachandar"<BALACHANDAR.AMARNATH at airbus.com>
> Subject: [vbox-dev] Issue with starting a VM
> To:<vbox-dev at virtualbox.org>
> Message-ID:
> 	<5237_1271327622_4BC6EB86_5237_65_1_19C2E86D1EA36B42877A694138AA2A8C4E768D at in0-mailmb01.res.airbus.corp>
> 	
> Content-Type: text/plain; charset="us-ascii"
>
> Hi
>
>   I have code as follows to start a virtual machine
>
> 				uuid = machine.getId();
>      				sessionType = "gui";
>      				env = "DISPLAY=:0.0";
>      				progress =
>      					vbox.openRemoteSession(session,
>                                              uuid,
>                                              null,
>                                              env);
>      				log.info("Session for VM " + uuid + " is
> opening...");
>      				progress.waitForCompletion(10000);
>
>      				long rc = progress.getResultCode();
>
> Bu tthis code snippet starts a virtual machine with gui. I don't want
> gui in my client machine. How do I modify the code ? In first place, is
> it right to modify the code or do I need to do something with my virtual
> box Installation ?
>
>
> Regards
> Bala
>
> The information in this e-mail is confidential. The contents may not be disclosed or used by anyone other than the addressee. Access to this e-mail by anyone else is unauthorised.
> If you are not the intended recipient, please notify Airbus immediately and delete this e-mail.
> Airbus cannot accept any responsibility for the accuracy or completeness of this e-mail as it has been sent over public networks. If you have any concerns over the content of this message or its Accuracy or Integrity, please contact Airbus immediately.
> All outgoing e-mails from Airbus are checked using regularly updated virus scanning software but you should take whatever measures you deem to be appropriate to ensure that this message and any attachments are virus free.
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:<http://vbox.innotek.de/pipermail/vbox-dev/attachments/20100415/659d1428/attachment-0001.htm>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 15 Apr 2010 16:05:23 +0530
> From: "AMARNATH, Balachandar"<BALACHANDAR.AMARNATH at airbus.com>
> Subject: [vbox-dev] Issues in starting a VM
> To:<vbox-dev at virtualbox.org>
> Message-ID:
> 	<12624_1271327739_4BC6EBF4_12624_56_2_19C2E86D1EA36B42877A694138AA2A8C4E768F at in0-mailmb01.res.airbus.corp>
> 	
> Content-Type: text/plain; charset="us-ascii"
>
>
> Hi
>
>
> Pls ignore my previous mail :(
>
>   I have code as follows to start a virtual machine
>
> 				uuid = machine.getId();
>      				sessionType = "gui";
>      				env = "DISPLAY=:0.0";
>      				progress =
>      					vbox.openRemoteSession(session,
>                                              uuid,
>                                              sessionType,
>                                              env);
>      				log.info("Session for VM " + uuid + " is
> opening...");
>      				progress.waitForCompletion(10000);
>
>      				long rc = progress.getResultCode();
>
> Bu tthis code snippet starts a virtual machine with gui. I don't want
> gui in my client machine. How do I modify the code ? In first place, is
> it right to modify the code or do I need to do something with my virtual
> box Installation ?
>
>
> Regards
> Bala
>
>
> The information in this e-mail is confidential. The contents may not be disclosed or used by anyone other than the addressee. Access to this e-mail by anyone else is unauthorised.
> If you are not the intended recipient, please notify Airbus immediately and delete this e-mail.
> Airbus cannot accept any responsibility for the accuracy or completeness of this e-mail as it has been sent over public networks. If you have any concerns over the content of this message or its Accuracy or Integrity, please contact Airbus immediately.
> All outgoing e-mails from Airbus are checked using regularly updated virus scanning software but you should take whatever measures you deem to be appropriate to ensure that this message and any attachments are virus free.
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:<http://vbox.innotek.de/pipermail/vbox-dev/attachments/20100415/9ec048c3/attachment-0001.htm>
>
> ------------------------------
>
> Message: 3
> Date: Thu, 15 Apr 2010 21:16:41 +0100
> From: Gerry Egan<gerry.egan6 at gmail.com>
> Subject: [vbox-dev] Exception calling IMachine.getName() through java
> 	webservice API
> To: vbox-dev at virtualbox.org
> Message-ID:
> 	<s2x5ef653a51004151316h23d272det860eeed613acbf38 at mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hello.
>
> I am trying to get the names and OS types of virtual machines using the Java
> webservice API. I am able to get the names but I get an exception every time
> and I cannot find the cause of this. The code I am running is:
>
> public void getVmNames()
>      {
>          mgr = new IWebsessionManager("http://localhost:18083/");
>          vbox = mgr.logon("test", "test");
>          try
>          {
>              List<IMachine>  machines=vbox.getMachines();
>              for (IMachine m : machines)
>              {
>                  vmListModel.addElement(m.getName()+" "+m.getOSTypeId());
>              }
>          }
>          catch (Exception e)
>          {
>              e.printStackTrace();
>          }
>          cleanup();
>       }
>
> The printout from the exception is:
>
> javax.xml.ws.WebServiceException: org.virtualbox_3_1.RuntimeFaultMsg:
> VirtualBox error: The object functionality is limited (0x2147942405)
>          at
> com.sun.xml.ws.commons.virtualbox_3_1.IMachine.getName(IMachine.java:98)
>          at project.VBench.getVmNames(VBench.java:623)
>          at project.VBench.NewTestButtonActionPerformed(VBench.java:634)
>          at project.VBench.access$300(VBench.java:16)
>          at project.VBench$4.actionPerformed(VBench.java:429)
>          at
> javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
>          at
> javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
>          at
> javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
>          at
> javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
>          at
> javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
>          at java.awt.Component.processMouseEvent(Component.java:6263)
>          at javax.swing.JComponent.processMouseEvent(JComponent.java:3255)
>          at java.awt.Component.processEvent(Component.java:6028)
>          at java.awt.Container.processEvent(Container.java:2041)
>          at java.awt.Component.dispatchEventImpl(Component.java:4630)
>          at java.awt.Container.dispatchEventImpl(Container.java:2099)
>          at java.awt.Component.dispatchEvent(Component.java:4460)
>          at
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
>          at
> java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
>          at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
>          at java.awt.Container.dispatchEventImpl(Container.java:2085)
>          at java.awt.Window.dispatchEventImpl(Window.java:2475)
>          at java.awt.Component.dispatchEvent(Component.java:4460)
>          at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
>          at
> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>          at
> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>          at
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>          at
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>          at
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>          at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> Caused by: org.virtualbox_3_1.RuntimeFaultMsg: VirtualBox error: The object
> functionality is limited (0x2147942405)
>          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>          at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>          at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>          at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>          at
> com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:130)
>          at
> com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
>          at
> com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
>          at
> com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
>          at $Proxy33.iMachineGetName(Unknown Source)
>          at
> com.sun.xml.ws.commons.virtualbox_3_1.IMachine.getName(IMachine.java:93)
>          ... 29 more
>
> A similar piece of code can be found in the clienttest.java example, when I
> run the clienttest show vms code I get the same exception.
> I am using VirtualBox 3.6 and the host is Windows server 2003. Any help
> would be greatly appreciated!
>
>
> Regards,
>
> Gerry Egan
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:<http://vbox.innotek.de/pipermail/vbox-dev/attachments/20100415/f4711ebe/attachment.htm>
>
> ------------------------------
>
> _______________________________________________
> vbox-dev mailing list
> vbox-dev at virtualbox.org
> http://vbox.innotek.de/mailman/listinfo/vbox-dev
>
>
> End of vbox-dev Digest, Vol 42, Issue 18
> ****************************************
>    
Hi ,
@Amarnath Bala

If i am not wrong what you are asking , you don't need the VM to start 
in "GUI" so, if that is the case you can start it in "VRDP" mode. To 
start the Virtual machine in Vrdp mode , here is my code in Java:-

private void powerOnMachine(IMachine machine) throws Exception {
         ISession session = null;
         try {
             session = mMgr.getSessionObject(mVbox);
             IProgress progress = mVbox.openRemoteSession(session, 
machine.getId(), "vrdp", "");
              progress.waitForCompletion(10000);

         } catch (Exception e) {
             throw (Exception) e;
         }
//        finally {
//
//
//            session.close();
//        }
     }

I hope this helps.

Sent




More information about the vbox-dev mailing list