SOAP Web Services

From RemObjects Software

Jump to: navigation, search

This is a RemObjects SDK Architecture entry
Feel free to add your notes to this topic below.



Using Web Services

Using SOAP based web services using RemObjects SDK is simple. To start use this, use the RemObjects SDK Menu and click Import WSDL Image:Service_Builder_Import_WSDL.png

During the import you have two options:

  • "Enable special handling for .NET wrapped parameters": This option allows importing Document/Literal services, so should stay set for most services.
  • "Create wrapper structures for nillable types": This option, when set, creates anonymous types for fields that have a minOccurs=0, maxOccurs=1, or nillable=1. By default this is off because a lot of services have fields that have this option set when they don't actually use this. Use this only when "nil" is a valid option for simple types like Integers and Strings.

Once the service is imported, a new source file is generated that can be used like any other. During importing, the options imported from the WSDL are stored in this source file and override the options set on the Soap Message used (like SoapMode and SerializationOptions, see SOAP_Message_Options for more information on those properties). The generated file can be used like any normal RemObjects SDK intf file to call remote services, with the (TRO)SoapMessage class as a message.

Writing Web Services

Writing Web Services is as easy as any other RemObjects SDK Service. It's even possible to write a RemObjects SDK based server application that can expose both Binary (for speed with RemObjects SDK clients) and SOAP (for compatibility with other libraries) at the same time, see Smart Services for more information on services that expose multiple message types.

To start, create a new project with one of the regular HTTP channels, with the SOAP message type. Open the Service Builder via the RemObjects SDK Menu and define your service. Once your service is done, open the main form, optionally set the SoapMode to document/literal to maximize compatibility with other implementations (See SOAP Message Options for the options on the Soap Message classes). Implement your service, and you're set to go.


See Also


Product: RemObjects SDK
Current version: RemObjects SDK 'Vinci' (5.0)

ListsGlossaryFeaturesHow ToComponentsToolsSamplesArticlesArchitectureIssues

Personal tools