The vSphere Client development kit provides the same extension points as the vSphere Web Client SDK. When you define a data view extension that references one of these extension points, your extension appears as a subordinate view inside that tab or view.

The extension points for the HTML views use the com.vmware.vsphere.client.htmlbridge.HtmlView generic class. For more information about the properties of the HtmlView class, see Properties of the HtmlView Extension Object.

To add HTML extensions to the Monitor and Configure tabs in the vSphere Client, use the following generic extension points:

vsphere.core.${objectType}.monitorViews

vsphere.core.${objectType}.manageViews

vsphere.core.${objectType}.manage.settingsViews

${namespace}.monitorViews

${namespace}.manageViews

${namespace}.manage.settingsViews

For example, if you define an extension that extends the vsphere.core.vm.manageViews extension point, your extension appears as an entry in the table of contents under the Configure tab in the object workspace for virtual machine objects.

For a complete list of object workspace extension points available for the vSphere Client, see Object Workspace Extension Points.

A data view extension appears differently depending on the vSphere object that you specified with the extension point. Data views can appear in the object workspace having one of the following structures.

Table of contents entry - If you define an extension to a top-level tab, such as Monitor, or Configure, a data view extension appears as an entry in the table of contents on the left in the object workspace.

Second-level tab view - If you define an extension to one of the existing second-level tabs, such as inside the Monitor tab, a data view extension appears as a view within the second-level tab in the object workspace.

Portlet - If you define the Summary tab extension point, a data view extension appears as a portlet in the object workspace.

When you design the user interface for your data view extension, keep in mind the extension point where the extension appears. The extension point data view type affects the amount of available screen space and the layout of your data view.

You can extend a vSphere object view under the Configure and Monitor tabs by using HtmlView to specify the generic HTML class that implements the new data view. You must also specify the URL to the HTML source of the data view.

Following is an example of how you can add an HTML view to the Monitor tab of host objects.

   <!-- Host monitor HTML view, visible in both Flex client and HTML client -->
   <extension id="com.vmware.samples.vspherewssdk.host.monitor">
      <extendedPoint>vsphere.core.host.monitorViews</extendedPoint>
      <object>
         <name>#{monitorHtml.label}</name>
         <componentClass className="com.vmware.vsphere.client.htmlbridge.HtmlView">
            <object>
               <root>
                  <url>/vsphere-client/vspherewssdk/resources/host-monitor.html</url>
               </root>
            </object>
         </componentClass>
      </object>
   </extension>

The value of the <url> property is a relative URL that starts with the Web context path of the plug-in, /vsphere-client/vspherewssdk. You must set the same URL without the first slash as a value to the Web-ContextPath manifest header of the Web application MANIFEST.MF file.

Make sure that the relative URL finishes with the .html file extension to enable session authentication for the view.

To display content from another domain in the view, you can use HTTPS URLs. Note that the content is not loaded the first time that the user open the view, unless the domain certificate is already verified. You must not use HTTP URLs because the contemporary Web browsers are designed to block any insecure content that you try to display inside the secure vSphere Client domain.

The host-monitor.html document view is opened with a REST request that contains the following parameters:

objectId - The context object ID used to create the REST URL that is used to retrieve object properties. For more information, see the description of the buildDataUrl(objectId, propList) function in vSphere Client JavaScript APIs.

objectType - The context object type.

locale - The current locale of the Web browser.