Quantcast
Channel: West Wind Message Board Messages
Viewing all articles
Browse latest Browse all 10393

Re: WSDL and WS*

$
0
0
Re: WSDL and WS*
Web Service Proxy Generator
Re: WSDL and WS*
03/20/2012
03:33:09 PM
3GK0XC2ZU Show this entire thread in new window
Gratar Image based on email address
From:
To:
Attachments:
None

doc.PDFBytes = System.IO.File.ReadAllBytes(Server.MapPath("resources/Loan.pdf"));

This is more tricky:

loProxy.oBridge.SetProperty(doc,"PDFBytes",CreateBinary( FileToStr("Loan.pdf") ) )

SetProperty makes an indirect call and handles some fixup of values (as does InvokeMethod) passed to it. It should pick up the binary value and assign it to the property.

More info here:
http://www.west-wind.com/wsdlgenerator/docs/?page=_3420o5sp6.htm

+++ Rick ---



That did it! Thanks Rick. Your explanation and the information in the "Array Handling" section of the docs did the trick!

I have one more question (of course) about the contents of the document that I will be sending to DocuSign. The sample code uses the following to read the bytes from the document (a pdf) into the document object:

doc.PDFBytes = System.IO.File.ReadAllBytes(Server.MapPath("resources/Loan.pdf"));

I have my Documents created and inserted in the Envelope with Recipients, but I just can't get the actual document contents into the PDFBytes array.

Here's my Document creation snippet:

loDoc = loProxy.oBridge.CreateInstance("APIService.Document") lodoc.FileExtension='pdf' lodoc.Name='test' *!* create the Envelope.Documents[] array and add first doc loBridge.CreateArrayOnInstance(loEnvelope,"Documents",loDoc)

I took this shot in the dark, but it didn't work:

lodoc.PDFBytes=FILETOSTR("testpdfapp.pdf")

Thanks for any and all your help Rick!


Yes you need to create the objects to pass as parameters using wwDotNetBridge.

Here is an example that demonstrates wwDotNetBridge usage:
http://www.west-wind.com/wsdlgenerator/docs?page=_2km016yg4.htm

Look at the Passing Complex Types section.

Basically you need to create your child objects as .NET objects and then access them using wwDotNetBridge. The code to do this will be:

loEnvelope = loProxy.oBridge.CreateInstance("DotNetNamespace.Envelope") loEnvelope.Property = value loEnvelope.Property2 = value2 loResult = loProxy.CreateEnvelope(loEnvelope)

You need to specify the fully qualified .NET type in CreateInstance which is namespace.classname in proper case. You can find this by looking at the generated .NET assembly (DLL) with Reflector and looking up the type. There you can see what properties are available and what sub types you might have to assign (ie. loEnvelope likely has other child objects which follow the same pattern).

+++ Rick ---



Thanks Rick. That's good news!

My experience with SOAP is extremely limited, so please bear with me. I can instantiate the object, but then it all falls apart ;) According to the DocuSign documentation, my first task is to create an envelope, but I try that and get the "Method 'APIService.APIService.CreateEnvelope' not found..." error message. I think it's because it expects an envelope parameter, as in:

FUNCTION CreateEnvelope(Envelope as Envelope) as EnvelopeStatus


But I can't figure out how to create the envelope outside of the CreateEnvelope method. From what you told me, the Proxy Generator has done it's job; now I have to figure out mine.

One last question though... the demo version will still work, correct (meaning it will perform all the functions in the class)? Once I figure it out I can purchase the license.

Thanks!
Kirk


Kirk,

It doesn't look like WS* service but a very complex one. There are also a bunch of operations that require authentication, but just looking at the WSDL it's hard to tell what's required actually.

What doesn't work exactly? If the classes generated then chances are good that the service can be called. WS* services would fail outright as they don't support the right protocol - the importer would fail.

+++ Rick ---



Hello.


I'm trying to incorporate an electronic signature feature into a Web Connection app, using a web service by DocuSign, and I've downloaded the Proxy Generator to see if it will help me. The WSDL file is at https://www.docusign.net/api/3.0/schema/dsapi.wsdl.

I've generated the proxy class, and have started testing, but have hit a wall. I know the generator documentation mentions that it won't work with WS* web services, so my question is will it work with this service?

Thanks!
Kirk








Rick Strahl
West Wind Technologies

Making waves on the Web

from Maui, Hawaii

Viewing all articles
Browse latest Browse all 10393

Trending Articles