通过VMWare的Webservice API连接ESX|ESXi主机的JAVA源码

@for & ever 2009-12-31

 

参考VMWare的Webservice API的文档,连接到ESX|ESXi主机。

 

版本: ESX|ESXi 4.0

 

JAVA代码如下:

 

import java.net.URL; import com.vmware.vim25.ManagedObjectReference; import com.vmware.vim25.ServiceContent; import com.vmware.vim25.VimPortType; import com.vmware.vim25.VimServiceLocator; /** * 获取到VMWare ESX or ESXi的连接 * ESX | ESXi版本:4.0 * @author forandever * @date 2009-12-29 * */ public class ServerConn { private ManagedObjectReference _svcRef; private VimServiceLocator _locator; private VimPortType _service; private ServiceContent _sic; private void createServiceRef() throws Exception { _svcRef = new ManagedObjectReference(); _svcRef.setType("ServiceInstance"); _svcRef.set_value("ServiceInstance"); } public void prepare(String hostName, String userName, String password) throws Exception { System.setProperty("axis.socketSecureFactory", "org.apache.axis.components.net.SunFakeTrustSocketFactory"); String url = "https://" + hostName + "/sdk/vimService"; createServiceRef(); _locator = new VimServiceLocator(); _locator.setMaintainSession(true); _service = _locator.getVimPort(new URL(url)); _sic = _service.retrieveServiceContent(_svcRef); if (_sic.getSessionManager() != null) { _service.login(_sic.getSessionManager(), userName, password, null); } System.out.println(_sic.getAbout().getFullName()); System.out.println("API type is " + _sic.getAbout().getApiType()); System.out.println("API version is " + _sic.getAbout().getApiVersion()); } public ManagedObjectReference get_svcRef() { return _svcRef; } public void set_svcRef(ManagedObjectReference ref) { _svcRef = ref; } public VimServiceLocator get_locator() { return _locator; } public void set_locator(VimServiceLocator _locator) { this._locator = _locator; } public VimPortType get_service() { return _service; } public void set_service(VimPortType _service) { this._service = _service; } public ServiceContent get_sic() { return _sic; } public void set_sic(ServiceContent _sic) { this._sic = _sic; } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub } }

 

 

@forandever 2009-12-31

 

 

 

 

 

你可能感兴趣的:(java,vmware,exception,webservice,api,service)