Java / VMWare - vim和vim25之间的交互

时间:2012-01-12 14:19:19

标签: java vmware

我正在尝试使用从AppUtils.vim.VMUtils获取的ManagedObjectRefence作为vim25库中工具的对象。

我收到一条错误消息,指出vim ManagedObjectReference与vim25 ManagedObjectReference不兼容。 vim25库中似乎没有VMUtils工具。

我在http://vlab-vwa.googlecode.com/svn/trunk/backend/apputils/vim25/VMUtils.java发现了一个类,它声称是VMUtils的vim25版本,但是它使用了vim ManagedObjectReference,它再次与vim25不兼容,因此在编译时类充满了错误-time。

有没有办法在vim和vim25之间进行交互,或者为vim25提供相应的VMUtils?

2 个答案:

答案 0 :(得分:0)

我对您使用的库并不完全熟悉,但我可以与API方面联系。

对于VMware API(在ESX / vCenter上),托管对象引用只是一对字符串:类型和标识符。 (见here。)

如果VMUtils中的com.vmware.vim.ManagedObjectReference类型允许您访问类型和值字段,则应该能够在vim25中构造等效对象。

或者,如果你能澄清你想要完成什么,也许那里有更好的答案。

答案 1 :(得分:0)

对于Java,我相信您希望使用ServiceInstance来完成C#中VMUtils.cs(vim25 C#版本)或VMUtils.java(vim Java版本)中的内容。我不确定VMUtils.java的完整故事是什么,但现在它已被弃用/不包括在内。

与vim的互动:

visdk4.0或“vim”版本显示了VMUtils.java的以下方法签名:

 browseArrayList
 browseMOR
 createVirtualDisk
 createVmConfigSpec         
 getConfigTargetForHost
 getDefaultDevicescomputeResMor
 getHost
 getHostFolder
 getVMs

在这里查找相应的JavaDoc: http://www.vmware.com/support/developer/vc-sdk/visdk400pubs/samples/javadoc/com/vmware/apputils/vim/VMUtils.html

与vim25的互动:

如果您从ServiceInstance对象开始并从那里向下钻取,则vim25版本中提供了上述方法或其等效方法。请参阅参考文档:http://pubs.vmware.com/vsphere-50/topic/com.vmware.wssdk.pg.doc_50/PG_Ch2_Programming_Model.4.4.html#1040021

更多资源:

我强烈建议您仔细查看“VI Java API”,作为使用原始vSphere Web Services SDK的替代和免费解决方案。 可以在此处找到该项目:http://vijava.sourceforge.net/和此处:http://www.doublecloud.org/