VMware vSphere Web Services SDK Readme

VMware logo

Welcome to the VMware vSphere Web Services SDK. This Readme contains these topics:

Note:   Information in this document may not be current. For up-to-date information, check these VMware Web sites:
Beta or Pre-release Products VMware Beta Community
Released SDK ProductsVMware vSphere Web Services SDK

What’s in the SDK Package?

The vSphere Web Services SDK provides:

  • Sample code that demonstrates common tasks involved in using the vSphere API to manage the virtual infrastructure. The sample code includes compiled and ready-to-run Java class files, as well as Java and C# source code files. See the respective readme files (readme_java and readme_dotnet) for information about building and using the samples.

  • Web Services Definition Language (WSDL) definitions that describe the API for accessing ESXi and vCenter Server systems. The WSDL is divided into two separate files:

    • vim.wsdl
    • vimService.wsdl (imports the vim.wsdl. Use the vimService.wsdl file to generate stubs.)


  • Batch files and shell scripts to automate the process of generating client-side stubs, and for re-building the sample applications.

    • For Java developers, compiled client-side libraries (vim.jar, vim25.jar, apputils.jar, samples.jar) are available for testing and development purposes.
    • For C# developers, the Microsoft Visual Studio project files (.sln) have been included.

  • Reference documentation (vSphere API Reference) that provides language-neutral descriptive information (object type definitions, properties, and method signatures, for example) for the VMware vSphere API.

The vSphere Web Services SDK is contained in the SDK\vsphere-ws directory in the vSphere Management SDK.

    VMware-vSphere-SDK-5.0.0-build
      SDK
        vsphere-ws

The following table contains a brief description of the contents of the vSphere Web Services SDK.

Directory structure (under \SDK\vsphere-ws):

DirectoryContentsDocumentation
docresources HTML and graphics resource files.  
docs Legal documents and this vSphere Web Services SDK readme file. vSphere WSSDK Readme
docs\java Root directory for sample documentation. JAXWS samples documentation
docs\ReferenceGuide vSphere API Reference documentation files.

User guides (Developer’s Setup Guide and Programming Guide) are available in the VMware Document Center. You can find a link to the document center on the http://www.vmware.com/support/developer/vc-sdk/index.html.
vSphere API Reference
dotnet Root directory for the .NET (DotNet) samples. Includes batch files, plus several other sub-directories containing Windows C# sample applications (in the appropriate namespace structure), and the Microsoft Visual Studio project files (.sln files). Readme for .NET (DotNet) samples
java\JAXWS Root directory for the JAXWS files. Contains batch files, .jar files, and samples. Readme for Java samples
wsdl\vim WSDL files for VI 2.0:
  • vim.wsdl - Contains the VMware vSphere API definitions.
  • vimService.wsdl - Defines the Web services endpoint. Your client application uses this endpoint to access vSphere services. The vimService.wsdl file references the vim.wsdl with an import statement; specify the vimService.wsdl file (rather than vim.wsdl directly) when you use a generation tool.
 
\wsdl\vim25 WSDL files for VI 2.5 and 2.5u2, and vSphere 4.0 and later:
  • vim.wsdl - WSDL file that contains the VMware vSphere API definitions.
  • vimService.wsdl - Defines the Web services endpoint. Your client application uses this endpoint to access vSphere services. The vimService.wsdl file references the vim.wsdl with an import statement; specify the vimService.wsdl file (rather than vim.wsdl directly) when you use a generation tool.
 


What is the VMware vSphere API?

The VMware vSphere API (vSphere API) provides language-neutral interfaces to the vSphere management framework. In much the same way that JMX (Java Management Extension) provides an infrastructure for managing and monitoring Java applications, the VMware vSphere API lets you do the same for VMware vSphere components (for example, virtual machines, host systems) and services (such as performance manager).

The API provides industry-standard Web services that are hosted on ESXi and vCenter systems. The API complies with the Web Services Interoperability Organization (WS-I) Basic Profile 1.0, which includes XML Schema 1.0, SOAP 1.1, and WSDL 1.1. For more information about the WS-I Basic Profile 1.0, see:

http://www.ws-i.org/Profiles/BasicProfile-1.0-2004-04-16.html

The Web services provide life-cycle operations and operations for managing vSphere components—compute resources, virtual machines, networks, storage, and the like.

Accessing VMware vSphere Web Servers

By default, a VMware vSphere Server listens on port 443, the well-known port for Secure HTTP (HTTPS), which uses SSL (secure sockets layer) to encrypt communications between client application and server. To access a server, use the URN from a web-services client application, as in:

https://FQDN_Server_or_IP_Address/sdk

  • The certificate of the target server must reside on the client machine. See “Obtaining Server Certificates” in the Appendix (“vSphere Server Certificates”) of the Developer’s Setup Guide.
  • To configure the server to support HTTP (rather than HTTPS), see “Modifying the Server Configuration to Support HTTP” in the Appendix (“vSphere Server Certificates”) of the Developer’s Setup Guide.

For access to the guide, use the link to the vSphere Document Center on the vSphere Web Services SDK Documentation page.

Checklist of Setup Tasks

Setting up your workstation for developing client applications using the vSphere Web Services SDK involves several steps. Assuming you are already developing applications of one kind or another, some of the steps below may be unnecessary. Modify the details of the process as appropriate or the specifics of your system. See the Developer’s Setup Guide for complete details. Also see the appropriate readme for your development platform (readme_java.html, readme_dotnet.html).

To get started with the vSphere Web Services SDK:

  1. Choose a development language (Java or C#) to use for Web-services client application development.

  2. Identify the target server (or servers) that you’ll use during development. (“Target servers” refers to the vCenter or ESXi systems that will be the targets of the client applications that you develop.)

  3. Verify network access to each server by launching a browser and connect to its URL:

    https://vsphere-server-name

    vSphere servers (vCenter and ESXi) use SSL (secure sockets layer) to encrypt communications, so the default protocol is HTTPS (as shown above).

    • You can configure a vSphere server to use HTTP (rather than HTTPS). See “Modifying the Server Configuration to Support HTTP” in the Appendix (“vSphere Server Certificates”) of the Developer’s Setup Guide.
    • If a server is configured for HTTPS, you must import its server-certificates as described in “Obtaining Server Certificates” in the (“vSphere Server Certificates”) Appendix of the Developer’s Setup Guide.

    For access to the Developer’ Setup Guide, use the link to the vSphere Document Center on the vSphere Web Services SDK Documentation page

    Note:

    For testing purposes, you can circumvent server-certificate verification by using the Java TrustManager. The JAX-WS samples included in the SDK contain examples of this technique. For production environments, you must establish a keystore for certificate verification. See the information about using a client-side credential store in the “Authentication and Authorization” chapter of the vSphere Web Services SDK Programming Guide.

  4. Install the development environment appropriate for your programming language.

    • For C#, use one of the Microsoft development environments, such as Microsoft Visual Studio 2008 or 2005, Microsoft Visual Studio .NET 2003, or Microsoft Visual C#. (VMware recommends using Microsoft Visual Studio 2008 or 2005; both include the required .NET Framework.) For more information, visit:
      http://msdn2.microsoft.com

    • For Java, use the JDK. VMware recommends JDK 6; you can use JDK 5.0, Update 8 or later. For more information, visit:
      http://java.sun.com/javase/downloads/

  5. Obtain the appropriate Web-services client tools (XML parser, WSDL-to-proxy-code generation tools, runtime) for your programming language:


  6. Configure environment and other settings on the workstation (as described in the appropriate language-specific sections in the Developer’s Setup Guide), or in the respective readme files (readme_java.html, readme_dotnet.html) for the samples.

VMware Resources

For released product information, including known issues, see the VMware Infrastructure SDK page. Be sure to read the Release Notes for the most recent information.


Copyright © 2010-2012 VMware, Inc. All rights not expressly granted herein are reserved.

Last updated: 10Sep2012 |  VMware vSphere Web Services SDK