1

vijava5.5 を使用して、vCenter 6.0 のサービス インスタンスを作成しました。

SerachManagedEntity を使用してデータストアのプロパティをフェッチしようとすると、使用可能なデータストアに対しても null 応答が返されます

データストア ds = (データストア) new InventoryNavigator(rootFolder).searchManagedEntity("データストア", "scsi_10_3");

ds は null http://prntscr.com/6izkxiです

しかし、データストアは vCenter http://prntscr.com/6izl1bで利用できます

vCenter 5.5 で正常に動作していることが問題である可能性があります

4

4 に答える 4

1

vSphere 6.0 から vijava 5.1 まで DataStore と StoragePod を取得する必要があるが、InventoryNavigator を使用しない場合は、Datacenter オブジェクトから取得できます。

       ManagedEntity[] meArr = rootFolder.getChildEntity();
       for (ManagedEntity me : meArr) {
            if (me instanceof Datacenter) {
                Datacenter dc = (Datacenter) me;
                // All datastores related to the Datacenter
                Datastore[] dsArr = dc.getDatastores();
                // You can also get StoragePod  
                StoragePod sp = (StoragePod) ds.getParent();
                }
            }

もちろん、これは非常に最適化されていない方法であり、何らかの理由で yavijava を使用したくない場合にのみ使用してください。それ以外の場合は、yavijava の方が確実に優れており、生活が楽になります。

于 2015-05-14T22:31:09.323 に答える
-1

インベントリから「DataStore」を取得できないことを願っています。HostSystem からのみ取得できます。HostSystem から、すべてのデータストアを取得できます。そこから反復して取得できます。

于 2015-03-20T13:59:19.237 に答える