1. A method in a computing device for allowing client code executing in a client application domain to access a server object executing in a server application domain, the server object being an instance of a server class that inherits an object class with a non-virtual get type method, the method comprising: instantiating a dynamic proxy object of a dynamic proxy class that inherits from a real proxy class, the real proxy class providing a virtual invoke method that is overridden by the dynamic proxy class; instantiating a remote type object for providing type information relating to the object class and the server class of the server object; under control of the dynamic proxy object, providing to client code a reference to a transparent proxy object that looks to the client code like an instance of the server class, the transparent proxy object having a get type method; under control of the client code, invoking the get type method of the transparent proxy object; under control of the get type method of the transparent proxy object, invoking the invoke method of the dynamic proxy object passing an indication that an implementation of the get type method is to be invoked; and under control of the invoke method of the dynamic proxy object that overrides the invoke method of the real proxy class, when an indication that an implementation of the get type method is to be invoked is passed, returning to the transparent proxy object a reference for accessing the get type method of the server class of the remote type object, rather than returning a reference for accessing the non-virtual get type method of the object class that would be returned by the invoke method of the real proxy class.