From RAD Studio API Documentation
Jump to: navigation, search



TRemotableXS = class(TRemotable)


class PASCALIMPLEMENTATION TRemotableXS : public TRemotable


Type Visibility Source Unit Parent
class public
Soap.InvokeRegistry Soap.InvokeRegistry


TRemotableXS is the base class for classes that represent a non-native scalar type on an invokable interface in a Web Service application.

Use TRemotableXS as a base class when defining a class to represent scalar values from a WSDL document that have no corresponding Object Pascal type. When creating a TRemotableXS descendant, override the XSToNative and NativeToXS methods to indicate how the value of the class can be converted to and from the string representation that is used to encode the value for transport.

Both the client application and server application must register a TRemotableXS descendant with the remotable class registry before they can use it. To register a remotable class, use the RegisterXSClass method of the object that the global RemTypeRegistry function returns.

On server applications, instances of TRemotableXS descendants that are input parameters on an invokable interface are automatically created when the method call is unmarshaled and automatically freed after any output parameters or return value are marshaled so that they can be sent to the client. When a TRemotableXS descendant is created in a method that was called remotely using an invokable interface, the instance is automatically freed after the value of the TRemotable descendant is marshaled for transport back to the client application.

The caller of an invokable interface (client) is responsible for creating any TRemotableXS instances that it passes as input parameters, and for freeing any TRemotableXS instances it creates or that are returned as output parameters or method results.

See Also