参考VMWare的Webservice API的文档,连接到ESX|ESXi主机.
Ejemplo: ESX|ESXi 4.0
JAVA代码如下:
¿Ver copia simple en el portapapeles?
importar java.net.URL;
importar com.vmware.vim25.ManagedObjectReference;
importar com.vmware.vim25.ServiceContent;
importar com.vmware.vim25.VimPortType;
importar com.vmware.vim25.VimServiceLocator;
/**
* 获取到VMWare ESX o ESXi的连接
* ESX | ESXi版本: 4.0
* @autor para siempre
* @fecha 2009-12-29
*
*/
conexión de servidor de clase pública {
Referencia de objeto gestionado privada _svcRef;
VimServiceLocator privado _locator;
servicio privado VimPortType _;
Contenido de servicio privado _sic;
private void createServiceRef() lanza una excepción {
_svcRef = nueva ManagedObjectReference();
_svcRef.setType("Instancia de Servicio");
_svcRef.set_value("Instancia de Servicio");
}
public void prepare(String hostName, String userName, String contraseña) lanza una excepción {
System.setProperty("axis.socketSecureFactory", "org.apache.axis.components.net.SunFakeTrustSocketFactory");
URL de cadena = "https://" + nombre de host + "/sdk/vimService";
crearRefServicio();
_locator = nuevo VimServiceLocator();
_locator.setMaintainSession(verdadero);
_service = _locator.getVimPort(nueva URL(url));
_sic = _service.retrieveServiceContent(_svcRef);
si (_sic.getSessionManager()! = nulo) {
_service.login(_sic.getSessionManager(), nombre de usuario, contraseña, nulo);
}
System.out.println(_sic.getAbout().getFullName());
System.out.println("El tipo de API es " + _sic.getAbout().getApiType());
System.out.println("La versión de API es " + _sic.getAbout().getApiVersion());
}
referencia pública de objetos gestionados get_svcRef() {
devolver _svcRef;
}
público vacío set_svcRef (referencia de referencia de objeto administrado) {
_svcRef = referencia;
}
público VimServiceLocator get_locator() {
devolver _localizador;
}
público vacío set_locator (VimServiceLocator _locator) {
this._locator = _locator;
}
público VimPortType get_service() {
devolver _servicio;
}
público vacío set_service (VimPortType _servicio) {
this._service = _servicio;
}
contenido de servicio público get_sic() {
devolver _sic;
}
público vacío set_sic (Contenido de servicio _sic) {
this._sic = _sic;
}
/**
* argumentos @param
*/
público estático vacío principal (String [] argumentos) {
// TODO Código auxiliar de método generado automáticamente
}
}
importar java.net.URL;
importar com.vmware.vim25.ManagedObjectReference;
importar com.vmware.vim25.ServiceContent;
importar com.vmware.vim25.VimPortType;
importar com.vmware.vim25.VimServiceLocator;
/**
* 获取到VMWare ESX o ESXi的连接
* ESX | ESXi版本: 4.0
* @autor para siempre
* @fecha 2009-12-29
*
*/
conexión de servidor de clase pública {
Referencia de objeto gestionado privada _svcRef;
VimServiceLocator privado _locator;
servicio privado VimPortType _;
Contenido de servicio privado _sic;
private void createServiceRef() lanza una excepción {
_svcRef = nueva ManagedObjectReference();
_svcRef.setType("Instancia de Servicio");
_svcRef.set_value("Instancia de Servicio");
}
public void prepare(String hostName, String userName, String contraseña) lanza una excepción {
System.setProperty("axis.socketSecureFactory", "org.apache.axis.components.net.SunFakeTrustSocketFactory");
URL de cadena = "https://" + nombre de host + "/sdk/vimService";
crearRefServicio();
_locator = nuevo VimServiceLocator();
_locator.setMaintainSession(verdadero);
_service = _locator.getVimPort(nueva URL(url));
_sic = _service.retrieveServiceContent(_svcRef);
si (_sic.getSessionManager()! = nulo) {
_service.login(_sic.getSessionManager(), nombre de usuario, contraseña, nulo);
}
System.out.println(_sic.getAbout().getFullName());
System.out.println("El tipo de API es " + _sic.getAbout().getApiType());
System.out.println("La versión de API es " + _sic.getAbout().getApiVersion());
}
referencia pública de objetos gestionados get_svcRef() {
devolver _svcRef;
}
público vacío set_svcRef (referencia de referencia de objeto administrado) {
_svcRef = referencia;
}
público VimServiceLocator get_locator() {
devolver _localizador;
}
público vacío set_locator (VimServiceLocator _locator) {
this._locator = _locator;
}
público VimPortType get_service() {
devolver _servicio;
}
público vacío set_service (VimPortType _servicio) {
this._service = _servicio;
}
contenido de servicio público get_sic() {
devolver _sic;
}
público vacío set_sic (Contenido de servicio _sic) {
this._sic = _sic;
}
/**
* argumentos @param
*/
público estático vacío principal (String [] argumentos) {
// TODO Código auxiliar de método generado automáticamente
}
}
@forandever 2009-12-31
本文来自CSDN博客,转载请标明出处: http://blog.csdn.net/forandever/archive/2009/12/30/5105459.aspx
-