Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.

VMWare vsphere Web Services SDK connectivity

Created: 19 Mar 2012 • Updated: 19 Mar 2012 | 7 comments

Has anyone been able to get any functionality out of the vsphere web services using the supplied wsdl files? There are a handful of threads here, but most suggestions are just to use powershell. (which works) I'm sure there has to be somebody out there that has managed to get this working.

As for me, when I try to import the vimservice.wsdl and vim.wsdl I'm getting an error message. Basically saying there is a missing datatype in the wsdl. (DestroyPropertyFilterRequestType).  But looking at the actual wsdl file, it is defined as such

<element name="DestroyPropertyFilter" type="vim25:DestroyPropertyFilterRequestType"/>

I queried the vmware forums and got some feedback, but I'm still somewhat at a loss. His response was..

The type "DestroyPropertyFilterRequestType" is actually defined in the "query-messagetypes.xsd" schema file. Perhaps your workflow application isn't finding this file when reading "vim.wsdl" (which includes it via schemaLocation)?

The weird part about all of this is that the older wsdl files work just fine for connecting to esx 2.x and 3.x boxes.

This works from the (older) vim wsdl because the WSDL was a little different back then and didn't use types quite the same way (ie, there is no "DestroyPropertyFilterRequestType" at all).

Any help or insight would be greatly appreciated. If we could ever get this thing working, I think it'd be very very powerful. 

Workflow 7.1 Sp2

Comments 7 CommentsJump to latest comment

reecardo's picture

Symantec has internally developed VMware workflow components. They're handcoded (i.e. no generators were used). I believe the content is set to be released, I'm just not sure when.

jhallam3's picture

Hi Whats the URL you are using?

https://localhost:8443/sdk/vim.wsdl?wsdl is what I have googled.

Plus is the cert valid?

Thanks

Jon Hallam

ManagedDesktop.com

b3tts32's picture

That address looks like it's specified for the VMWare Virtual Center web service. I'm trying to connect directly to my ESXi box. I'm able to browse https://vmserver/mob fine. The problem seems like it's lies in the wsdl files being called. After a little more research, I think I'm kind of starting to understand what's going on. I don't have a programming history so everything has been rough around the edges. 

Starting with SDK 4.1 and later the wsdl (basically the web service file) files started to include multiple files within the file or at least call multiple files. Which would explain why the older files work just fine and I can see and access the methods. Apparently the vimservice.wsdl file is calling the vim.wsdl which houses the methods, within that vim.wsdl there are a few include statements that are calling .xsd files that include the schema library. Well the error I was getting was it couldn't find one of the methods in the vim.wsdl file, which was being referenced by the xsd file. So basically I need some way for Workflow to see those extra xsd files, or at least copy them to some system location that the integration library looks at. 

So basically I'm just going to go through the steps of setting up my environment and follow the guidelines they have listed for a c# environment. I just installed Visual Studio 2010, and need to finish following the guide to see where that leads me.

But with all of that being said, you'd think somebody has to have this working with the web services??

Jason Short's picture

VMWare components for both vShield and vSphere are included in this Workflow Templates

https://www-secure.symantec.com/connect/downloads/workflow-template-dlp-vshield-vm-quarantine

This does not include components for every method of either API, but the components in there might be useful.

b3tts32's picture

I got tied up with some other things and never really got back to this. I believe editing the .xsd files and the original wsdl should get it to work but it'd probably take a lot of trial and error. If Symantec could fill us in on how they got those few methods to work for the example they showed then that would be great.

I suppose you could use PowerCLI and go that direction with it, but it's up to you. Creating some decision only models would yield you same the results of different methods you created, but that's a lot of work.

I'm still very much interested in this so let me know what you come up with, or maybe I can dig up my old stuff at some point.

noodleNT's picture

I reached out to our technical rep. Hopefully they have some insite.