Quantcast
Channel: VMware Communities : Discussion List - vSphere Client SDK
Viewing all 2218 articles
Browse latest View live

error using vim25 APIs from service layer

$
0
0

Hi,

I am developing a pluggin that involves an extension to the java service layer. The error occurs when I attempt to access the Server Instance belonging to the server (I use this later to query hosts). When I call the constructor for the ServiceInstance I get the following error:

 

VI SDK invoke exception:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

 

My Constructor call looks as follows:

new ServiceInstance(new URL(myURL), username, password, true);

 

My pluggin was working a few days ago and now for some reason I am getting this error. I do not believe I have changed anything since then. I am also able to run my script fine from the command line, it only errors when run from the java service layer. I have also tried changing the last parameter to false and get the same error. Any help would be greatly appreciated.

 

Thanks,

Eric


web client sdk 6.5 u1 vs fling sdk

$
0
0

Hi,

 

Difference in features of  web client sdk 6.5 u1 and fling sdk.

HTML SDK Fling v10: Extension point vsphere.core.${objectType}.list.columns is deprecated

$
0
0

Hi,

 

the release notes of HTML SDK Fling version 10 state:

Extension point vsphere.core.${objectType}.list.columns is deprecated

 

In our WebClient plug-in we currently use this to present overviews of

our custom object types.

In version 10 of HTML SDK Fling this is still working.

 

With which version will this work no longer ?

 

Or does it mean that this functionality will not be available for the

VMware built-in object types but will still be available for custom

object types ?

 

Regards

Juergen

How can I use vsphere.core.${objectType}.monitorCategories extension point?

$
0
0

There was a question how vsphere.core.${objectType}.monitorCategories extension point can be used.

The usage of this extension point is documented in the official vSphere Web Client SDK documentation: https://vdc-download.vmware.com/vmwb-repository/dcr-public/a6383b70-f20e-4f68-be41-65d98a7c6778/d5572dc1-850b-4730-bf9a-de7635721d79/vsphere-web-client-extensions-sdk-65-programming-guide.pdf

In addition, vSphere Web Client SDK 6.5 Update 1 and Fling 10 provide a sample which demonstrate it. The sample is called vsphere-wssdk. You can go to its plugin.xml file to observe the following code snippet:

 <extension id="com.vmware.samples.vspherewssdk.vm.monitor.category">

      <extendedPoint>vsphere.core.vm.monitorCategories</extendedPoint>

      <object>

         <label>#{monitor.category}</label>

      </object>

   </extension>

Note that vsphere.core.${objectType}.monitorCategories extension is supported only on HTML Client.

How to refresh navigator content

$
0
0

Now i am working on developping a plugin of web-client using html.

 

how to refresh left-side navigator when i do something.

Flex UI does not display actions correctly

$
0
0

The Flex UI does not display actions correctly, when using either the original 6.5.0 SDK or later Flings. Specifically, categories don't seem to work at all, and if a large number of actions are present, they are repeated on cascaded menus. This severely impacts the usability of our plugin with the Flex UI.

 

This issue seems to occur with all versions of the Flex client (6.5.0 RTM, 6.5.0d and 6.5U1). I noticed that the ActionMenuItemSpec in the samples has changed in the latest Fling (to remove the label and icon fields), but applying this change to our plugin has made no difference to the issue.

 

Is this a known issue? Is there any workaround for this, or way to improve the display of the menus in the Flex client? If not, is it possible to show a different action menu in Flex mode that might at least allow us to reorder/remove entries to try to improve usability whilst maintaining full functionality for HTML client?

 

I've attached a modified "plugin.xml" for the "chassis-b" sample in the "6.5.0-6094542" Fling SDK which demonstrates the issue, and screenshots of how it appears with the HTML and Flex clients. Note that in the Flex client, no categories are used, and the first actions (Edit, Remove, and Other Actions to "4A" appear twice, and a third-level cascading menu appears called "More Uncategorized Actions" which consumes more screen space unnecessarily). In the HTML client, it appears correctly (Other Actions/Other Actions2 in a category, then Other Actions 3, 4, 5 grouped in their own categories, then Other Action 6 at the top level).

Not able to connect to HTTPS endpoint within Webclient Service layer - HELP!

$
0
0

Hi,

We are currently hitting a show-stopper issue which is preventing us from being able to deliver and certify our plugin. Would you please be able to help?

Our code originated from the plugin-seed 0.9.7. It uses a custom data adapter to connect to our appliance's REST API and retrieve data. This works well when we are connecting to an HTTP endpoint (using RestTemplate), and the data is all returned as expected.

However, when attempting to connect to an HTTPS endpoint, the connection fails as it is not authorised (due to SSL). This is expected behaviour, and we have tried to circumvent this using the code provided here: http://www.baeldung.com/httpclient-ssl

This code works as expected, and returns our data when built within a simple Java application with required dependencies (including introduced Apache HTTP libraries).

However, when we try running the code within the plugin we get a failure on installation to the Virgo server, as follows:

Application context creation failure for bundle 'biz.runecast.rc2plugin.rc2plugin-service' version '1.0.0'. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'RunecastDataClient' defined in URL [bundleentry://323.fwk1376790324/META-INF/spring/bundle-context.xml]: Instantiation of bean failed; nested exception is java.lang.LinkageError: loader constraint violation: when resolving method "org.springframework.web.client.RestTemplate.setRequestFactory(Lorg/springframework/http/client/ClientHttpRequestFactory;)V" the class loader (instance of org/eclipse/virgo/kernel/userregion/internal/equinox/KernelBundleClassLoader) of the current class, biz/runecast/rc2plugin/services/RunecastDataClient, and the class loader (instance of org/eclipse/virgo/kernel/userregion/internal/equinox/KernelBundleClassLoader) for the method's defining class, org/springframework/http/client/support/HttpAccessor, have different Class objects for the type org/springframework/http/client/ClientHttpRequestFactory used in the signature

We believe all the required dependencies are there, equivalent to the dependencies in our simple application. These are included in the Manifest and included within the JAR on build (Bundle-Classpath). I have included the MANIFEST.MF with the post.

The project builds the .JAR fine using ANT. When our class is being statically initialised, the error occurs at the point shown below:

private static SSLContext sslContext; private static CloseableHttpClient httpClient; private static ClientHttpRequestFactory httpRequestFactory; private static RestTemplate restTemplate = new RestTemplate();     static {         try {             sslContext = new SSLContextBuilder()                     .loadTrustMaterial(null, new TrustStrategy() {                         @Override                         public boolean isTrusted(X509Certificate[] certificate, String authType)                                 throws CertificateException {                             return true;                         }                     }).build();         } catch (KeyManagementException e) {             // TODO Auto-generated catch block             e.printStackTrace();         } catch (NoSuchAlgorithmException e) {             // TODO Auto-generated catch block             e.printStackTrace();         } catch (KeyStoreException e) {             // TODO Auto-generated catch block             e.printStackTrace();         }         httpClient = HttpClients.custom()                 .setSSLContext(sslContext)                 .setSSLHostnameVerifier(new NoopHostnameVerifier())                 .build();         httpRequestFactory = new HttpComponentsClientHttpRequestFactory(httpClient);         restTemplate.setRequestFactory(httpRequestFactory); //<---- This is causing error    }

 

This is preventing us from continuing any work on the plugin. We have no idea how to proceed towards a solution. Could you please let us know what we can do, or what we can provide, to diagnose and solve this problem ASAP?

Many thanks,

Warren

plugin-seed 0.9.8 is available

$
0
0

Version 0.9.8 is available on our Fling site: download the file plugin-seed-0.9.8.zip. The 3 main changes are:

  • Includes the new Javascript API bootstrap introduced with HTML SDK 6.5.u1
  • Large refactoring of services and components to use Observables as a better pattern
  • End-to-end tests for the plugin running in vSphere Client

 

See the attached change-log for the full list of changes. 

You can also compare all source changes since 0.9.7 with the file version-0.9.8.diff included with the new version.

 

VMworld 2017 attendees:  don't miss our workshop ELW181107U  Sunday 27th from 1:30 to 3 pm (*), where we will go through a new hands-on-lab using plugin-seed. You'll be able to ask any question to Vladimir and myself!   For others the same hands-on-lab using plugin-seed should be available soon after VMworld.

 

(*) FYI, it was initially scheduled Monday 2 to 3:30 pm but was moved to Sunday recently. 


For HTML5- fling, only manual refresh will load the contents on the summary/manage tabs

$
0
0

Hi,

After sendNavigationRequest or any routing to tabs like summary/configure/manage the data gets loaded after manual refresh of the page.

By default it throws window.parent is null .

Adding this._globals.getWebPlatform().setGlobalRefreshHandler in the angular component file doesn't fix this issue.

vcenter webclient - 6.5

Global refresh handler not called after action in 6.5U1 (regression from 6.5.0d/5097204)

$
0
0

On 6.5.0d VCenter Server / VCSA installs and when using the 5097204 Fling "vsphere-ui", performing an Action would cause the global refresh handler to be called when the action completed. However, on 6.5U1 (or using the 6.5U1 SDK "vsphere-ui"), the global refresh handler is no longer called when an action completes. Instead, a manual click of the "Refresh" button in the top toolbar is required to bring the current view up to date.

 

This issue occurs using the same plugin binaries; both plugins built using the older "web-platform.js" and those built using the new bootstrapping mechanism suffer the same issue. I've attached a build of the "chassis-b" sample using 6.5U1 to demonstrate the issue - the only change is to add a Javascript alert to the refreshData() function, so that it is clear whether it is called. Repro steps are to drop it into the "pickup" directory of the "vsphere-ui" server config, go to GIL/ChassisB, select a chassis, see the initial refreshData popup, click "Actions > Edit Chassis > Update Chassis" - on 6.5.0d/5097204 the refreshData popup appears, on 6.5U1 (SDK or full install) it doesn't.

 

This is a serious usability regression - there were issues with the refresh behaviour in 6.5.0 RTM, but the user experience on 6.5.0d was excellent, with immediate feedback on the results of actions.

 

Is this a known issue? Is it an intentional regression (and if so why), or will it be fixed in a future update? Is there any workaround possible?

Resource URL protocol changed in web client server after upgrading the vCenter server 6.0 update 2 to update 3

$
0
0

Hi All,

We are facing issue after upgrading the vCenter server 6.0 u2 to u3. In the vSphere web client, our plugin is getting the  resource URL protocol as "bundleresource" where as in all the previous versions of vCenter server, the resource URL protocol is "File".

But in case of fresh installation of vCenter server 6.0 update 3, plugin works fine as it gets the expected resource URL as ”File”. So we checked the web client server configuration file of both the servers, one that has been upgraded from update 2 and the other one which is a fresh installation.

Wrapper.conf of vCenter server 6.0 u3 web client server fresh installed: <image1.png>

Wrapper.conf of vCenter server 6.0 u3 web client upgraded from update 2 :<image2.png>

Then we checked the file path to confirm if the jar version is correct or not which we found as: <image3.png>

So the web client server is still referring to the older jars which are even not available in the file path. We changed the wrapper.conf file to refer the updated jar version and restarted the web client server.

set.OSGI_CLASSPATH=file:/usr/lib/vmware-virgo/server/lib/org.eclipse.virgo.nano.authentication_3.6.4.RELEASE.jar,file:/usr/lib/vmware-virgo/server/lib/org.eclipse.equinox.launcher_1.3.0.v20120308-1358.jar,file:/usr/lib/vmware-virgo/server/lib/org.eclipse.virgo.nano.shutdown_3.6.4.RELEASE.jar,file:/usr/lib/vmware-virgo/server/lib/org.eclipse.virgo.util.env_3.6.4.RELEASE.jar,file:/usr/lib/vmware-virgo/server/lib/org.eclipse.virgo.kernel.equinox.extensions_3.6.4.RELEASE.jar,file:/usr/lib/vmware-virgo/server/plugins/org.eclipse.osgi_3.8.2.v20130124-134944.jar

After login to the web client, we can now see the Plugin in the home page and it’s working fine now. The resource URL protocol is coming as "File" now.

We are not sure why VMware upgrade path didn’t update the wrapper.conf to refer the updated jar. 

Thanks,

Sourav

using filters in the new vCenter 6.5 REST API (APIExplorer)

$
0
0

Hi,

I am just on trying my first steps with the new great REST API of vCenter 6.5.

One Task that often arises, is listing all Hosts of a given Cluster.
I first tried to accomplish this Task via the APIExplorer.

 

So first step I got a sessionid (token), no Problem. (rest/com/vmware/cis/session)
Second step I tried to list all Hosts of the vCenter, fine. All Hosts are returned in a nice json string. (rest/vcenter/host/)
But now I want to set a filter as documented. So I entered the name of an existing cluster in the textfield "filter.clusters"
And now I allways get an empty result, no matter what kind of Format I give the filter:
test_cluster
"test_cluster"
["test_cluster"] <- this should be correct, since it is expecting a Array of strings
{["test_cluster"]}

 

A Little python script confirms the problem - no data, when a filter is given.

 

Did anybody had yet the task to filter the result of a REST query?

Any ideas here?

Chris

 

1.PNG

2.PNG

Having problem with downloading plugin resource bundles, when the port number of vCenter is not default port (443).

$
0
0

We have installed a vCenter in PORT - 441.

We are trying to register a plugin (com.vitallabs.storApp.TasksAndEvents) for displaying Task and Events with properties: eventList, faultList, taskList

When we tried to register our plugin the resource bundle is not getting downloaded properly.

When we read virgo logs for the plugin, we came across the following lines:

 

[2017-08-09T12:32:51.710+05:30] [WARN ] cm-catalog-manager-pool-1704 70000427 100013 200003 com.vmware.vise.vim.cm.CmCatalogManager                           ResourceBundle https://10.10.2.14/catalog/com.vitallabs.storApp.TasksAndEvents_catalog.zip download failedjava.net.ConnectException: Connection refused: connect

[2017-08-09T12:32:51.710+05:30] [INFO ] cm-catalog-manager-pool-1704 70000427 100013 200003 com.vmware.vise.vim.cm.CmCatalogManager                           download time (ms) for the resource bundle C:\ProgramData\VMware\vCenterServer\cfg\vsphere-client\cmCatalog\com.vmware.ciscom.vitallabs.storApp.TasksAndEvents.zip,https://10.10.2.14/catalog/com.vitallabs.storApp.TasksAndEvents_catalog.zip: 1082

[2017-08-09T12:32:51.710+05:30] [WARN ] cm-catalog-manager-pool-1704 70000427 100013 200003 com.vmware.vise.vim.cm.CmCatalogManager                           Failed to download C:\ProgramData\VMware\vCenterServer\cfg\vsphere-client\cmCatalog\com.vmware.ciscom.vitallabs.storApp.TasksAndEvents.zip from https://10.10.2.14/catalog/com.vitallabs.storApp.TasksAndEvents_catalog.zip

 

But when we tried to run the url with port number i.e., "https://10.10.2.14:441/catalog/com.vitallabs.storApp.TasksAndEvents_catalog.zip", we are able to download the Resource Bundle file.

This also perfectly works fine if vCenter is deployed in default port number.

 

Any idea why vCenter is not adding port number to the catalog path before downloading resource bundle?

Extension points - nodespecs fling sdk

$
0
0

hi,

 

The following extension points is not working .Can you please let me know what needs to be fixed.

 

Expectation is a custom object on the left pane of the web-client after selecting a specific object from the main view.

 

 

 

<templateInstance id="abc.xyz.viewTemplateInstance">      <templateId>vsphere.core.inventory.objectViewTemplate</templateId>      <variable name="namespace" value="abc.xyz"/>      <variable name="objectType" value="sample:customObject"/>   </templateInstance>      <extension id="123.456">      <extendedPoint>vise.navigator.nodespecs</extendedPoint>      <object>         <title>#{ }</title>         <parentUid>vsphere.core.navigator.virtualInfrastructure</parentUid>      </object>   </extension>       <templateInstance id="abc.lists.prq">       <templateId>vsphere.core.inventorylist.objectCollectionTemplate</templateId>       <variable name="namespace" value="abc.xyz.collection"/>       <variable name="title" value="#{ }"/>       <variable name="icon" value="#{ }"/>       <variable name="objectType" value="sample:customObject"/>       <variable name="listViewId" value="abc.xyz.list"/>       <variable name="parentUid" value="123.456"/>    </templateInstance>

Join the SDK Webinars!

$
0
0

Hi all,

We organize Webinars where SDK engineering team presents new features and discusses key concepts such as extensibility, plug-in upgrade, plug-in packaging, best practices etc. The Webinars are free and occur on regular basis.

If you would like to join them, please write to plugin@vmware.com mail group and specify:

  • Your mail, name and company.
  • Your time zone
  • (Optional) Topic that you are interested.

Thanks,

Ina


HTML5 plugin code behaviour in webclient 6.0 vs 6.5- Need inputs

$
0
0

Hi,

I have tested the HTML 5 plugin code written so far in 6.0 and 6.5 web client.

 

Here are the observations:

 

6.0 :

 

Object Navigator and work space loads properly.

Related Objects tab is getting displayed.

The selected Object from the object navigator is displayed next to the actions tab .Attached <Image1.png>

 

6.5 :

 

Manual refresh doesn't load object navigator

Related objects are not displayed.

Selected object from the object navigator is not displayed.Attached <Image2.png>

 

Please provide inputs to fix this.

How can i get the logged in user roles and privileges by using PropertyProviderAdapter interface in vsphere web client.

$
0
0

How can i get the logged in user roles and privileges by using PropertyProviderAdapter interface in vsphere web client. I am using vCenter 6.5 and its java SDK.

In 6.5 HTML Web Client, Home > Shortcuts has only two categories. Other categories (Administration) can't be added?

$
0
0

Hi Web Client SDK team,

 

In 6.5 HTML5 Web Client I am seeing only two categories under Home > Shortcuts.

What about Administration section?

 

In our vCenter plugin we have added a shortcut icon under Administration Category. But it's not coming up now as the category is removed from shortcuts.

Note: I have added "plugin-icons.css" as dependency in plugin.xml file. The other external icons (for action Menu items) are coming up. So plugin-icons.css is not a problem.

 

HTML SDK - v6.5.0.10000-5972228

Web Client - v6.5.0.10000-5973321

 

VSphere 6.5U1 filter Comparator type

$
0
0

In the vSphere Client 6.5U1 UI, there is a standard "Filter" box on the top-right of the built-in lists, including the built-in lists for custom objects. However, this filter does not work for the SDK samples and our plugin.

 

In the "dataservice.log", it appears that using the filter causes a query to be built using a CompositeConstraint for all of the displayed columns with a Comparator type of "CONTAINS". This comparator is not handled by the samples - only "TEXTUALLY_MATCHES".

 

Is the "CONTAINS" comparator functionally equivalent to "TEXTUALLY_MATCHES"? The SDK documentation lists the various Comparator enums, but doesn't seem to contain any details about what they mean. For example, should "CONTAINS" be case-sensitive? Are any of the other Comparator values used by the default vSphere UI and/or VMWare-provided tools and need to be supported by plugins?

Listing vCenters existing in inventory

$
0
0

Hi,

We are using the Plugin Seed (v 0.9.7) - soon to upgrade to 0.9.8...

We would like to be able to list the uuids / names of vCenter instances that are available  to the webclient installation where the plugin is installed (these will be those connected in linked mode and so appearing within the inventory).

Could you please adivse if it is possible to do this within the Angular code? If not, would it be required to perform the funciton at the service layer, and how please (e.g. through the SDK)?

Thank you,

Warren

Viewing all 2218 articles
Browse latest View live


Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>