Bob,

Have you dug into PocketSOAP.  I was impressed with it
when I played with it.

Cheers,
Heitzso

On Wed, 2002-06-05 at 16:39, robert woodley wrote:
> 
> Requirements: Consume SOAP services (from an AXIS
> server) in Javascript on Windows. The javascript
> should have no browser dependencies, i.e. you should
> be able to run it from cscript. The javascript should
> deal with objects and services, not bodies and
> headers. The javascript objects should map as closely
> as possible to the Java Beans used by the Axis
> service. 
> 
> There are various javascript to SOAP implementations
> out there, but the requirement to deal with objects
> and services narrowed the field. This requirement
> meant that we had to have a set of COM objects for
> Javascript to manipulate.
> 
> We were looking for a way generate COM stubs, or at
> least automate the process to avoid writing all of
> these stubs by hand. There were 3 kinds of COM objects
> required:
>   - one COM object for each JavaBean
>   - one COM object for each Soap Service
>   - one COM object for each Mapper
> (Serializer/Deserializer).
> MS SoapToolkit v3 beta allows for 'Generic Mappers'
> which allows one to skip having to code the Mapper COM
> objects. Cape Studio will generate the Bean COM
> objects and the Service COM objects. The service COM
> objects use the low-level API internally which is OK.
> But the generated classes have dependencies such that
> they only work with a Cape Clear server. Thus they
> don't interoperate. And anyhow it would be nice not to
> introduce a 3rd tech package!
> 
> So until I get around to writing WSDL2VB, the COM
> Beans and the COM Services need to be written by hand.
> 
> COM doesn't understand inheritance so you may have to
> flatten out any bean class hierarchies you might have.
> 
> Use the VBArray Object to get Javascript to understand
> COM Arrays. Your arrays will have to be of anyType
> type, at least I couldn't get it work otherwise.
> 
> The WSDL from Java2WSDL won't work with your
> Javascript client. You need to:
>   1. Flatten out your types, just like you flattened
> out your COM beans. 
>   2. Change the capitalization of the WSDL Types to
> get around this quirk with Axis where the WSDL Types
> don't match the Soap tags in case. (posted elsewhere
> on this list).
>   3. The WSDL generated from Java2WSDL does not comply
> with the Soap Spec, Section 5.1, Rule 8. So you need
> to modify this by hand.
> 
> Finally, you need to add the 'bean mappings' to a
> special .WSML file which acts like the .wsdd file.
> 
> Painful, but eventually works. Just shows how far we
> have yet go on interoperability. Maybe someone knows a
> simpler way...?
> 
> Bob Woodley
> 
> __________________________________________________
> Do You Yahoo!?
> Yahoo! - Official partner of 2002 FIFA World Cup
> http://fifaworldcup.yahoo.com


Reply via email to