VMware {code} Community
SravanKumar1234
Contributor
Contributor

PluginSeed- How to implement focusable node category in HTML client plugin?

Hi,

I'm testing the new plugin-seed 0.9.8 to implement our plugin in html. I'm using vSphere Version 6.5.0.10000 Build 5973321. Using latest fling sdk Version 6.5.0.10000 Build 6311399.

How could I implement focusable node category in HTML client plugin as shown in attached screenshot named "1. html_client_nodeCategory.jpg"?

The same is working in flex-client, refer attached screenshot named "2.Flex_client_nodeCategory.jpg".

I'm attaching sample plugin project to reproduce the issue.

Additionally, In Flex client when i try to access chassis list under vCenter inventory lists. It is giving following exception.

Error Stack

---------------------

TypeError: Error #1009

at com.vmware.ui.lists::ListViewMediator/sortAndAddColumnContainers()

at com.vmware.ui.lists::ListViewMediator/set columnSetContainers()

at PropertyInjectionJob/injectArrayTypeProperty()

at PropertyInjectionJob/injectCollectionTypeProperty()

at PropertyInjectionJob/injectObjectSet()

at PropertyInjectionJob/onObjectsRetrieval()

at com.vmware.aspectfw.extensibility::DeclarativeExtensibilityManager$/filterUsingSpecAndInvokeCallback()

at com.vmware.aspectfw.extensibility::DeclarativeExtensibilityManager$/filterAndNotify()

at com.vmware.aspectfw.extensibility::DeclarativeExtensibilityManager/onExtObjsCreated()

at ExtensionObjCreationJob/onObjectCreation()

at com.vmware.extensionfw::CallbackUtil$/callback()

at com.vmware.extensionfw::ExtensionManager/onExtensionObjectsCreated()

at com.vmware.extensionfw::CallbackUtil$/callback()

at ObjectsCreator/onObjectCreated()

at com.vmware.extensionfw::CallbackUtil$/callback()

at com.vmware.extensionfw::ExtensionObjectFactory/onExtensionObjectParsed()

at com.vmware.extensionfw::CallbackUtil$/callback()

at com.vmware.extensionfw::ExtensionObjectParser/onObjectDeserialized()

at com.vmware.flexutil::MxmlDeserializer/onThreadTerminated()

at flash.events::EventDispatcher/dispatchEvent()

at com.vmware.flexutil::PseudoThread/terminate()

at com.vmware.flexutil::PseudoThread/onTimer()

at com.vmware.flexutil::PseudoThread/start()

at com.vmware.flexutil::MxmlDeserializer/xmlToObjectAsync()

at com.vmware.extensionfw::ExtensionObjectParser/parse()

at com.vmware.extensionfw::ExtensionObjectFactory/getExtensionObject()

at ObjectsCreator/onResourceModulesLoaded()

at com.vmware.extensionfw::MiscUtil$/loadResourceModules()

at ObjectsCreator/loadResourceModules()

at ObjectsCreator/createObjects()

at com.vmware.extensionfw::ExtensionManager/onFilterExtensionsReturn()

at com.vmware.extensionfw::Filterer/filter()

at com.vmware.extensionfw::ExtensionManager/onFilterExtensionsReturn()

at com.vmware.extensionfw::Filterer/applyFilterResult()

at com.vmware.extensionfw::Filterer/onFilterApplied()

at com.vmware.vsphere.client.filters::VcServerGuidFilter/apply()

at com.vmware.extensionfw::Filterer/applyFilter()

at com.vmware.extensionfw::Filterer/onFilterCreated()

at com.vmware.extensionfw::CallbackUtil$/callback()

at com.vmware.extensionfw::ExtensionManager/onObjectCreated()

at com.vmware.extensionfw::CallbackUtil$/callback()

at com.vmware.extensionfw::ExtensionObjectFactory/getObject()

at com.vmware.extensionfw::ExtensionManager/createObjectInternal()

at com.vmware.extensionfw::ExtensionManager/onResourceModulesLoaded()

at com.vmware.extensionfw::MiscUtil$/loadResourceModules()

at com.vmware.extensionfw::ExtensionManager/createObject()

at com.vmware.extensionfw::Filterer/filter()

at com.vmware.extensionfw::ExtensionManager/onGetCombinedInfoReturn()

at com.vmware.extensionfw::ExtensionManager/getExtensionObjectsInternal()

at com.vmware.extensionfw::ExtensionManager/getExtensionObjectsWithInfos()

at Function/<anonymous>()

at ExtensionObjCreationJob/getObjects()

at com.vmware.aspectfw.extensibility::DeclarativeExtensibilityManager/getExtObjectsForSpecedExtPoints()

at com.vmware.aspectfw.extensibility::DeclarativeExtensibilityManager/getObjects()

at PropertyInjectionJob/start()

at com.vmware.frinje::InjectionManager/setAllInjectablePropertiesOn()

at com.vmware.frinje::InjectionManager/addTarget()

at com.vmware.frinje::InjectionManager/addRemoveObject()

at com.vmware.frinje::InjectionManager/onInjectableObjectAddedRemoved()

at flash.events::EventDispatcher/dispatchEvent()

at com.vmware.frinje::ObjectRegistry/onObjectAdded()

at flash.events::EventDispatcher/dispatchEvent()

at com.vmware.flexutil.events::QueuingEventDispatcher/dispatchPendingEvents()

at com.vmware.flexutil::FunctionUtil$/invokeCallLater()

Thanks,

Sravan

1. html_client_nodeCategory

0 Kudos
4 Replies
Denis_Chorbadzh
VMware Employee
VMware Employee

Hi,

In order to create a node category, you have to create a node which specifies '<viewOpenedUponFocus className="com.vmware.ui.objectnavigator.views.CategoryNodeTreeView"/>'.

Then, you have to create child nodes which will be listed under this category (specify as <parentUid> the id of the node category).

You can see the "globalview-sample" from 6.5U1 SDK.

 

Best Regards,

Denis

0 Kudos
SravanKumar1234
Contributor
Contributor

Thanks. I will look into this sample.

Where is this documented?

What about the errors. How to resolve them?

Some help is needed here.

Thanks,

sravan

0 Kudos
Denis_Chorbadzh
VMware Employee
VMware Employee

Hi Sravan,

 

This particular use case (with <viewOpenedUponFocus>) is not documented. However, for anything else, you can use the following link as a reference: https://code.vmware.com/web/sdk/65/web-client (the programming guide at the bottom of the page).

Regarding the error, I am not able to reproduce the issue. Can you provide more information?

In the 6.5.0.10000 SDK, you can look at chassisA-sample or chassisB sample. Both of them implement chassis lists under "Global Inventory Lists".

 

Regards,

Denis

0 Kudos
SravanKumar1234
Contributor
Contributor

Thanks dennis. I'm aware of the documentation link Smiley Happy

To reproduce those errors you could use the attached plugin sample project .zip  and run install dependency node packages and deploy the plugin in vCenter 6.5.

0 Kudos