VMwarevSphere开发配置VMwarevSphereWebServicesSDK的开发环境作者:飞哥()版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明。一、准备使用VMwarevSphereWebServicesSDK开发JavaWeb-service客户端应用,需要使用到javaSDK和JavaWebService开发工具,如下:1.所需软件VMwarevSphereWebServicesSDK或者J2SE1.4.x。VMware推荐使用J2SE1.5.0_08或以后。://ws.apache.org/axis/java/releases.html2.SDK内容介绍a.目录介绍\doc:vSphereAPI参考手册、java例子的javadoc。\samples\Axis:使用Axix实现的java版例子代码。\samples\DotNet:使用C#实现的例子代码\sms:StorageManagementServerSDK。在vCenterServer4.0中有一个名叫StorageManagementService(SMS)的服务,通过此服务提供之API可获得vCenter所有存储的相关信息。\wsdl:SDKAPI相关webservice的描述文件。b.java版中batch文件及shell脚本说明build.bat/build.sh:检查环境变量(AXISHOME、JAVAHOME、VMKEYSTORE、WEBMHOME);设置本地classpath(通过调用lcp.bat);清除已经存在的java相关文件(通过调用clean.bat),如class文件或jar文件。这个脚本文件将产生客户端stub及重新编译所有的例子程序。如果脚本成功执行后,将产生vim.jar、vim25.jar、apputil.jar、credstore.jar、samples.jar。使用-w可以在重新编译过程中不产生stub。lcp.bat/lcp.sh:设置本地classpath。被build.bat和run.bat调用。run.bat/run.sh:用来运行例子。clean.bat/clean.sh:清除已经存在的java相关文件,如class文件或jar文件。二、配置Java环境在vSphereWebServicesSDK中包含vim.jar、vim25.jar、apputils.jar、credstore.jar以及samples.jar,这些jar文件是由ApacheAxis1.4和JavaJDK1.5编译完成的。如果你不需要重新编译和产生stub,可以直接在应用中使用这些VMware预先编译好的jar文件。1.建立相关目录分别为VMwarevSphereWebServicesSDK、ApacheAxis和J2SE建立相应的目录(目录的名字中最好不要含有空格)推荐的目录名称WindowsLinuxSDKc:\devprojects\visdk21~\apps\visdkApacheAxisc:\apache\axis~\apps\apache\axisJ2SEc:\java\jdk1.5.0_nn~\apps\java\jdk1.5.0_nnc:\java\jre1.5.0_nn~\apps\java\jre1.5.0_nn2.安装相关软件将VMwarevSphereWebServicesSDK和ApacheAxis解压缩到之前建立好的目录中,安装J2SE到之前建立好的目录中。3.导入服务器证书登录ESXServer,拷贝/etc/vmware/ssl/rui.crt至C:\VMware-Certs。使用keytool工具导入证书,用法如下:keytool-import-filecertificate-filename-aliasserver-name-keystorevmware.keystore例如:C:\VMware-Certskeytool-import-filerui.crt-aliassdkpubs01-keystorevmware.keystore在运行时也可以使用--ignorecert参数忽略服务器证书验证,但不建议在生产环境中使用。4.配置相关环境变量AXISHOME=C:\apache\axis1.4JAVAHOME=C:\java\jdk1.5.0_21VMKEYSTORE=C:\VMware-Certs\vmware.keystoreWBEMHOME=C:\devprojects\visdk21\SDK\samples\Axis\java\lib\wbem.jar5.测试环境是否配置成功。使用run.bat测试例子是否可以正常运行。语法如下:runcom.vmware.samples.general.SimpleClient--url[--ignorecertignorecert]例如:runcom.vmware.samples.general.SimpleClient--url***--ignorecertignorecert如果成功执行,可获得如下的类似输出:ObjectType:FolderReferenceValue:ha-folder-vmPropertyName:namePropertyValue:vmObjectType:HostSystemReferenceValue:ha-hostPropertyName:namePropertyValue:sdkpubslab-02.eng.vmware.comObjectType:ResourcePoolReferenceValue:ha-root-poolPropertyName:namePropertyValue:ResourcesObjectType:FolderReferenceValue:ha-folder-hostPropertyName:namePropertyValue:hostObjectType:ComputeResourceReferenceValue:ha-compute-resPropertyName:namePropertyValue:sdkpubslab-02.eng.vmware.comObjectType:VirtualMachineReferenceValue:16PropertyName:namePropertyValue:Windows_2K3_VM...ObjectType:DatacenterReferenceValue:ha-datacenterPropertyName:namePropertyValue:ha-datacenterObjectType:FolderReferenceValue:ha-folder-rootPropertyName:namePropertyValue:ha-folder-root至此,你已经成功安装配置了VMwarevSphereWebServicesSDK的运行环境。在上文中,我们已经成功的配置好vSphereSDK的运行环境,并成功运行SDK中的例子。但要开发一个管理ESX服务器的系统,还需要我们配置vSphereSDK的开发环境。本文将介绍如何使用Eclipse搭建vSphereSDK开发环境。如果你所开发的系统基于ApacheAxis1.4和JavaJDK1.5之上的,可以直接在应用中使用这些VMwareSDK预先编译好的jar文件,并不需要重新产生stub和编译。但为了更好的了解vSphereSDK,本文将在Eclipse中搭建包括vim、vim25、apputil、credstore以及samples共5个项目,独立开发调试,便于我们后续开发调试自己的ESX管理系统。1.建立相应项目2.建立package名称,拷贝对应的代码ProjectNamePackageNameSourceLocationVMwareSDK_vimcom.vmware.vim\SDK\samples\Axis\java\com\vmware\vimVMwareSDK_vim25com.vmware.vim25\SDK\samples\Axis\java\com\vmware\vim25VMwareSDK_appuitlscom.vmware.apputils\SDK\samples\Axis\java\com\vmware\apputilsVMwareSDK_credstorecom.vmware.security.credstore\SDK\samples\Axis\java\com\vmware\security\credstoreVMwareSDK_samplescom.vmware.samples\SDK\samples\Axis\java\com\vmware\samples3.设置javabuildpath分别在每个项目properties-javabuildpath-projects中设定需要项目ProjectNameRequiredProjectsVMwareSDK_vim无VMwareSDK_vim25无VMwareSDK_appuitlsVMwareSDK_vim,VMwareSDK_vim25,VMwareSDK_credstoreVMwareSDK_credstore无VMwareSDK_samplesVMwareSDK_vim,VMwareSDK_vim25,VMwareSDK_credstore,VMwareSDK_appuitls在Eclipse的Windows-Preferences新增一个名叫AXIS的UserLibraries,便于我们后续使用,如下图分别在每个项目properties-javabuildpath-libraries中添加需要的jar文件ProjectNameLibrariesVMwareSDK_vim无VMwareSDK_vim25无VMwareSDK_appuitlsAXISVMwareSDK_credstore无VMwareSDK_samplesAXIS,wbem.jar,mailapi.jar,activation.jar4.运行SimpleClient新增一个Runconfiguration,按下图输入相应信息。注意替换Programarguments中url、username、password参数。Clickrun,如果成功获取你所测试的ESXServer的相关信息,恭喜你已经成功配置VMwarevSphereWebServicesSDK的开发环境。