sujeetmkalaskar's Posts

Hi @Denis_Chorbadzh , Thank you very much for the update  Thanks With Regards Sujeet Kalaskar
Hi @Denis_Chorbadzh , Thanks for the update, Is the same extension and extension point applicable for vSphere Client SDK  for VCSA 8 (pre-release)?   Thanks, With Regards, Sujeet Kalaskar
Hi, Is there any way to get all the list of Extensions and Extension points (Remote plugin.json) for the development of the remote plugin? Thanks, With Regards Sujeet Kalaskar
Hi @_vladi_ , @laurentsd  I hope you are doing good. We are migrating the existing plugin.xml to plugin.json (Local plugin to Remote). While executing the plugin-manifest-converter,  I am facing t... See more...
Hi @_vladi_ , @laurentsd  I hope you are doing good. We are migrating the existing plugin.xml to plugin.json (Local plugin to Remote). While executing the plugin-manifest-converter,  I am facing the below Null pointer exception. "Starting the migration of plugin xml to json format java.lang.NullPointerException at com.vmware.h5.sdk.plugin.migration.file.ResourceDefinitionManager.getCssClassesMap(ResourceDefinitionManager.java:192) at com.vmware.h5.sdk.plugin.migration.factory.impl.DefinitionsModelFactory.setIconDefinitions(DefinitionsModelFactory.java:108) at com.vmware.h5.sdk.plugin.migration.factory.impl.DefinitionsModelFactory.createModel(DefinitionsModelFactory.java:39) at com.vmware.h5.sdk.plugin.migration.factory.impl.DefinitionsModelFactory.createModel(DefinitionsModelFactory.java:30) at com.vmware.h5.sdk.plugin.migration.factory.impl.PluginDataModelFactory.createModel(PluginDataModelFactory.java:33) at com.vmware.h5.sdk.plugin.migration.factory.impl.PluginDataModelFactory.createModel(PluginDataModelFactory.java:17) at com.vmware.h5.sdk.plugin.migration.parser.impl.PluginConfigParser.buildPluginData(PluginConfigParser.java:123) at com.vmware.h5.sdk.plugin.migration.parser.impl.PluginConfigParser.parse(PluginConfigParser.java:70) at com.vmware.h5.sdk.plugin.migration.PluginManifestConverter.main(PluginManifestConverter.java:24)" This plugin.xml works fine for local plugins but needs to migrate to a remote plugin. Can you please suggest or provide any other way to convert?   This is the same plugin.xml which was posted https://communities.vmware.com/t5/vSphere-Client-SDK-Discussions/Add-Action-Link-Button/m-p/1858303#M3811
Hi @_vladi_ , Hope you are doing good. I am facing the issue, whenever I do the global refresh I get "You have no privileges to view this object or it is deleted" Can you please help to resolve th... See more...
Hi @_vladi_ , Hope you are doing good. I am facing the issue, whenever I do the global refresh I get "You have no privileges to view this object or it is deleted" Can you please help to resolve the issue?
Hi _vladi_​ and laurentsd​, Is there any way to get an indication that plugin is going to be unregistered before, so that we can do some clean up? Suppose, we have a logs created for the plug... See more...
Hi _vladi_​ and laurentsd​, Is there any way to get an indication that plugin is going to be unregistered before, so that we can do some clean up? Suppose, we have a logs created for the plugin which we have registered. During unregister we want to clean the plugin's log directory. Note: Register/Unregister is done using the extension-registration script provided in SDK. Can you please help? Thanks Sujeet Kalaskar
Thanks Plam_Dimitrov​
Hi Plam_Dimitrov​, The plugin has the capability to manage the storage  RAID by managing multiple ESXi hosts. So using the plugin, we have subscribed to ESXi SFCB create/delete/modify/alert u... See more...
Hi Plam_Dimitrov​, The plugin has the capability to manage the storage  RAID by managing multiple ESXi hosts. So using the plugin, we have subscribed to ESXi SFCB create/delete/modify/alert using the static port. So to deliver the alert/event to the plugin with the updated configuration, we need to add the inbound firewall rule, whenever the user adds the ESXi hosts. I have used Appliance Management UI to add the firewall entry, but if the user/customer does want to add a specific port there is no option to add it. vCenter server appliance username and password do not have the rights to add the firewall entry. So how to open/add a specific port entry in firewall/iptables? Thanks, With Regards Sujeet Kalaskar
Hi _vladi_​ In our vSphere client H5 plugin, we need to add the dynamic port entry into the firewall of VCSA, is there any option to add the port using the VCSA SSO username? Thanks Sujeet... See more...
Hi _vladi_​ In our vSphere client H5 plugin, we need to add the dynamic port entry into the firewall of VCSA, is there any option to add the port using the VCSA SSO username? Thanks Sujeet Kalaskar
Thanks for the confirmation, Can we use the session/local store to capture the last visited object/node? Or is there any other way? Regards, Sujeet Kalaskar
Hi Denis_Chorbadzhiyski​, HTML client : vsphere-client-sdk-6.7.0.40000-14186396 (6.7 U3) Yes using objects extensibility. I did not get this view, but I wanted to have this view in my plugin... See more...
Hi Denis_Chorbadzhiyski​, HTML client : vsphere-client-sdk-6.7.0.40000-14186396 (6.7 U3) Yes using objects extensibility. I did not get this view, but I wanted to have this view in my plugin. Thanks, Sujeet Kalaskar
Hi Denis_Chorbadzhiyski​, Thanks for the update Thanks, Sujeet Kalaskar
Hi _vladi_​, Do you have an update on this? Thanks, Sujeet Kalaskar
Hi _vladi_​, This mapping is already done as "maxView:Host". Thanks, Sujeet Kalaskar
Hi _vladi_​, Can you please check the above code and tell me what I am missing? Thanks, Sujeet Kalaskar
Hi _vladi_​, Below is the code <!-- ****************** HOST extensions *********************** -->    <!-- Controller object view template instance,    which creates the object workspace ... See more...
Hi _vladi_​, Below is the code <!-- ****************** HOST extensions *********************** -->    <!-- Controller object view template instance,    which creates the object workspace (right hand side) for Controller objects.    -->    <templateInstance id="com.pmc.maxview.host.viewTemplateInstance">       <templateId>vsphere.core.inventory.objectViewTemplate</templateId>       <variable name="namespace" value="com.pmc.maxview.host" />       <variable name="objectType" value="maxView:Host" />    </templateInstance>    <!-- Getting started view. -->    <extension id="com.pmc.maxview.host.SummaryView1">       <extendedPoint>com.pmc.maxview.host.views</extendedPoint>       <precedingExtension>NULL</precedingExtension>       <object>          <name>Getting Started</name>          <contentSpec>             <url>/ui/maxViewVSphere/index.html?view=managed-system</url>          </contentSpec>       </object>    </extension>    <!-- Controller objects collection template,    which creates the Controller collection node in the inventory under "maxView".    Variables:       - namespace: The namespace used in the extension points and extension ids,          it must be different than the one in vsphere.core.inventory.objectViewTemplate!       - title: resourceId of the title of the collection.       - icon: resourceId of the icon to use in the inventory list.       - objectType: the same object type as in objectViewTemplate above.       - listViewId: extension id of the object list view created by objectViewTemplate       - parentUid: extension id of the category node under which this belongs.    -->    <templateInstance id="com.pmc.maxview.host.lists.allHosts">       <templateId>vsphere.core.inventorylist.objectCollectionTemplate</templateId>       <variable name="namespace" value="com.pmc.maxview.hostCollection" />       <variable name="title" value="Host" />       <variable name="icon" value="#{hostIcon}" />       <variable name="objectType" value="maxView:Host" />       <variable name="listViewId" value="com.pmc.maxview.host.list" />       <variable name="parentUid" value="com.pmc.maxview.maxViewAppCategory" />    </templateInstance>    <!-- Controller relations displayed in the Related Objects tab.    The extension point vise.relateditems.specs takes an ObjectRelationSetSpec.    Here we are showing relations with logicals, physicals, enclosures and hosts.    -->    <extension id="com.pmc.maxview.relateditems.specs.host">       <extendedPoint>vise.relateditems.specs</extendedPoint>       <precedingExtension>NULL</precedingExtension>       <object>          <type>maxView:Host</type>          <icon>#{hostIcon}</icon>          <!-- relationsViewId references the "related items view" extension created          by the objectViewTemplate -->          <relationsViewId>com.pmc.maxview.host.related</relationsViewId>          <relationSpecs>             <com.vmware.ui.relateditems.model.RelationSpec>                <id>controllerForHost</id>                <icon>#{ctrlIcon}</icon>                <label>#{controllerLabel}</label>                <relation>controller</relation>                <targetType>maxView:Controller</targetType>                <!-- listViewId must be defined for the array device's Related Objects                tab to show a list of related Controller -->                <listViewId>com.pmc.maxview.controller.list</listViewId>             </com.vmware.ui.relateditems.model.RelationSpec>          </relationSpecs>       </object>    </extension>    <!--       Controller columns, displayed in the Objects tab list or the Logical, Physical and Enclosure's Related Objects.       The ColumnSetContainer object is defined in xml instead of using a separate Flex       class for upward compatibility with future versions.    -->    <extension id="com.pmc.maxview.host.list.sampleColumns">       <!-- This extension point is created by objectViewTemplate above -->       <extendedPoint>com.pmc.maxview.host.list.columns</extendedPoint>       <precedingExtension>NULL</precedingExtension>       <object>          <!-- XML representation of com.vmware.ui.lists.ColumnSetContainer -->          <items>             <!-- Controller name column -->             <com.vmware.ui.lists.ColumnContainer>                <uid>com.pmc.maxview.host.column.name</uid>                <dataInfo>                   <com.vmware.ui.lists.ColumnDataSourceInfo>                      <!-- Column header -->                      <headerText>#{name}</headerText>                      <!-- Object property whose text value will be displayed (array of 1 element) -->                      <requestedProperties>                         <String>name</String>                      </requestedProperties>                      <!-- Use sortProperty to allow column to be sorted with header click -->                      <sortProperty>name</sortProperty>                      <!-- Use exportProperty to allow column data to be exported -->                      <exportProperty>name</exportProperty>                   </com.vmware.ui.lists.ColumnDataSourceInfo>                </dataInfo>             </com.vmware.ui.lists.ColumnContainer>             <!-- Controller Mode column -->             <com.vmware.ui.lists.ColumnContainer>                <uid>com.pmc.maxview.host.column.status</uid>                <dataInfo>                   <com.vmware.ui.lists.ColumnDataSourceInfo>                      <headerText>Status</headerText>                      <requestedProperties>                         <String>status</String>                      </requestedProperties>                      <exportProperty>status</exportProperty>                   </com.vmware.ui.lists.ColumnDataSourceInfo>                </dataInfo>             </com.vmware.ui.lists.ColumnContainer>             <!-- Controller Status column -->             <com.vmware.ui.lists.ColumnContainer>                <uid>com.pmc.maxview.host.column.ipAddress</uid>                <dataInfo>                   <com.vmware.ui.lists.ColumnDataSourceInfo>                      <requestedProperties>                         <String>ipAddress</String>                      </requestedProperties>                      <exportProperty>ipAddress</exportProperty>                      <headerText>IP Address</headerText>                   </com.vmware.ui.lists.ColumnDataSourceInfo>                </dataInfo>             </com.vmware.ui.lists.ColumnContainer>          </items>       </object>    </extension>    <extension id="com.pmc.maxview.maxviewvsphere.host.iconLabelSpecCollection">       <extendedPoint>vise.inventory.representationspecs</extendedPoint>       <precedingExtension>NULL</precedingExtension>       <object>          <objectType>maxView:Host</objectType>          <specCollection>             <com.vmware.ui.objectrepresentation.model.IconLabelSpec>                <iconId>#{hostOKIcon}</iconId>                <conditions>                   <com.vmware.data.query.PropertyConstraint>                      <propertyName>iconStatus</propertyName>                      <comparator>EQUALS</comparator>                      <comparableValue>                         <String>normal</String>                      </comparableValue>                   </com.vmware.data.query.PropertyConstraint>                </conditions>             </com.vmware.ui.objectrepresentation.model.IconLabelSpec>             <com.vmware.ui.objectrepresentation.model.IconLabelSpec>                <iconId>#{hostWarningIcon}</iconId>                <conditions>                   <com.vmware.data.query.PropertyConstraint>                      <propertyName>iconStatus</propertyName>                      <comparator>EQUALS</comparator>                      <comparableValue>                         <String>warning</String>                      </comparableValue>                   </com.vmware.data.query.PropertyConstraint>                </conditions>             </com.vmware.ui.objectrepresentation.model.IconLabelSpec>             <com.vmware.ui.objectrepresentation.model.IconLabelSpec>                <iconId>#{hostErrorIcon}</iconId>                <conditions>                   <com.vmware.data.query.PropertyConstraint>                      <propertyName>iconStatus</propertyName>                      <comparator>EQUALS</comparator>                      <comparableValue>                         <String>error</String>                      </comparableValue>                   </com.vmware.data.query.PropertyConstraint>                </conditions>             </com.vmware.ui.objectrepresentation.model.IconLabelSpec>             <com.vmware.ui.objectrepresentation.model.IconLabelSpec>                <iconId>#{hostIcon}</iconId>                <conditions>                   <com.vmware.data.query.PropertyConstraint>                      <propertyName>iconStatus</propertyName>                      <comparator>EQUALS</comparator>                      <comparableValue>                         <String>default</String>                      </comparableValue>                   </com.vmware.data.query.PropertyConstraint>                </conditions>             </com.vmware.ui.objectrepresentation.model.IconLabelSpec>          </specCollection>       </object>    </extension>    <extension id="com.pmc.maxview.host.listActionSet">       <extendedPoint>vise.actions.sets</extendedPoint>       <object>          <actions>             <!-- Create Chassis -->             <com.vmware.actionsfw.ActionSpec>                <uid>com.pmc.maxview.host.addHost</uid>                <icon>#{hostAdd}</icon>                <delegate>                   <className>com.vmware.vsphere.client.HtmlPluginModalAction</className>                   <object>                      <root>                         <!-- execute the action on client-side (html view in a modal dialog) -->                         <actionUrl>/ui/maxViewVSphere/index.html?view=add-system-modal</actionUrl>                         <dialogTitle>Add Host</dialogTitle>                         <dialogSize>500,250</dialogSize>                         <dialogIcon>#{hostAdd}</dialogIcon>                      </root>                   </object>                </delegate>                <!-- All context-less actions should be marked as private to prevent themfrom showing up in all menus.-->                <privateAction>true</privateAction>             </com.vmware.actionsfw.ActionSpec>          </actions>       </object>    </extension>    <extension id="com.pmc.maxview.host.actionSet">       <extendedPoint>vise.actions.sets</extendedPoint>       <object>          <actions>             <!-- Delete Chassis -->             <com.vmware.actionsfw.ActionSpec>                <uid>com.pmc.maxview.host.deleteHost</uid>                <icon>#{hostDelete}</icon>                <delegate>                   <className>com.vmware.vsphere.client.HtmlPluginModalAction</className>                   <object>                      <root>                         <!-- execute the action on client-side (html view in a modal dialog) -->                         <actionUrl>/ui/maxViewVSphere/index.html?view=delete-system-modal</actionUrl>                         <dialogTitle>Delete Host</dialogTitle>                         <dialogSize>500,325</dialogSize>                         <dialogIcon>#{hostDelete}</dialogIcon>                      </root>                   </object>                </delegate>                <!-- All context-less actions should be marked as private to prevent themfrom showing up in all menus.-->                <privateAction>true</privateAction>             </com.vmware.actionsfw.ActionSpec>          </actions>       </object>       <metadata>          <!-- This filters the actions to be visible only on Chassis -->          <objectType>maxView:Host</objectType>       </metadata>    </extension> <!-- UI info associated with the controller type owned by this plugin.       This is mainly used in conjonction with prioritization extensions, to verify that       only this plugin can modify prioritization settings on controller -->    <extension id="com.pmc.maxview.host.objectType">       <extendedPoint>vsphere.core.objectTypes</extendedPoint>       <precedingExtension>NULL</precedingExtension>       <object>          <types>             <String>maxView:Host</String>          </types>          <label>Host</label>          <labelPlural>Hosts</labelPlural>          <icon>#{hostIcon}</icon>       </object>    </extension>    <extension id="com.pmc.maxview.host.listAction">       <extendedPoint>vmware.prioritization.listActions</extendedPoint>       <object>          <prioritizedIds>             <String>com.pmc.maxview.host.addHost</String>          </prioritizedIds>          <regionId>com.pmc.maxview.host.list</regionId>       </object>    </extension>    <extension id="com.pmc.maxview.host.promotedActions">       <extendedPoint>vmware.prioritization.actions</extendedPoint>       <object>          <prioritizedIds>             <String>com.pmc.maxview.host.deleteHost</String>          </prioritizedIds>          <regionId>com.pmc.maxview.host.list</regionId>          <actionTargetTypes>             <String>maxView:Host</String>          </actionTargetTypes>       </object>    </extension>
So this should be the <actionTargetTypes>    <String>maxView:Host</String>  </actionTargetTypes> I tried that, not sure why its not displaying. If at least one system is available, ... See more...
So this should be the <actionTargetTypes>    <String>maxView:Host</String>  </actionTargetTypes> I tried that, not sure why its not displaying. If at least one system is available, "Delete" button should be enabled/rendered
Hi _vladi_​ The above example does not have, just adding the below extension should work right? <extension id="com.pmc.maxview.host.promotedDeleteActions">       <extendedPoint>vmware.pri... See more...
Hi _vladi_​ The above example does not have, just adding the below extension should work right? <extension id="com.pmc.maxview.host.promotedDeleteActions">       <extendedPoint>vmware.prioritization.actions</extendedPoint>       <object>          <prioritizedIds>             <String>com.pmc.maxview.host.deleteHost</String>          </prioritizedIds>          <regionId>com.pmc.maxview.host.list</regionId>       </object>    </extension> Using this I am unable to see the "Delete" button. Thanks, Sujeet Kalaskar
Hi _vladi_​ I tried using "vmware.prioritization.actions", "Delete" button is not visible at all, without adding any filtering If I use "vmware.prioritization.ListActions" both buttons are vi... See more...
Hi _vladi_​ I tried using "vmware.prioritization.actions", "Delete" button is not visible at all, without adding any filtering If I use "vmware.prioritization.ListActions" both buttons are visible, but unable to disable the "Delete" button <extension id="com.pmc.maxview.host.listActionSet">       <extendedPoint>vise.actions.sets</extendedPoint>       <object>          <actions>             <!-- Delete Chassis -->             <com.vmware.actionsfw.ActionSpec>                <uid>com.pmc.maxview.host.deleteHost</uid>                <icon>#{hostDelete}</icon>                <delegate>                   <className>com.vmware.vsphere.client.HtmlPluginModalAction</className>                   <object>                      <root>                         <!-- execute the action on client-side (html view in a modal dialog) -->                         <actionUrl>/ui/maxViewVSphere/index.html?view=delete-system-modal</actionUrl>                         <dialogTitle>Delete Host</dialogTitle>                         <dialogSize>500,325</dialogSize>                         <dialogIcon>#{hostDelete}</dialogIcon>                      </root>                   </object>                </delegate>                <!-- All context-less actions should be marked as private to prevent themfrom showing up in all menus.-->                <privateAction>true</privateAction>             </com.vmware.actionsfw.ActionSpec>             <!-- Create Chassis -->             <com.vmware.actionsfw.ActionSpec>                <uid>com.pmc.maxview.host.addHost</uid>                <icon>#{hostAdd}</icon>                <delegate>                   <className>com.vmware.vsphere.client.HtmlPluginModalAction</className>                   <object>                      <root>                         <!-- execute the action on client-side (html view in a modal dialog) -->                         <actionUrl>/ui/maxViewVSphere/index.html?view=add-system-modal</actionUrl>                         <dialogTitle>Add Host</dialogTitle>                         <dialogSize>500,250</dialogSize>                         <dialogIcon>#{hostAdd}</dialogIcon>                      </root>                   </object>                </delegate>                <!-- All context-less actions should be marked as private to prevent themfrom showing up in all menus.-->                <privateAction>true</privateAction>             </com.vmware.actionsfw.ActionSpec>          </actions>       </object>    </extension>    <extension id="com.pmc.maxview.host.promotedActions">       <extendedPoint>vmware.prioritization.listActions</extendedPoint>       <object>          <prioritizedIds>             <String>com.pmc.maxview.host.addHost</String>             <String>com.pmc.maxview.host.deleteHost</String>          </prioritizedIds>          <regionId>com.pmc.maxview.host.list</regionId>          <actionTargetTypes>             <String>maxView:Host</String>          </actionTargetTypes>       </object>    </extension> Thanks, Sujeet Kalaskar
Hi _vladi_​, I am unable to view/see the navigation between previously visited views as shown in below screenshot. Whether this option is deprecated or we need to add any specific extension p... See more...
Hi _vladi_​, I am unable to view/see the navigation between previously visited views as shown in below screenshot. Whether this option is deprecated or we need to add any specific extension point for it? Can you please help? Thanks Sujeet Kalaskar