Enabling a set of Smalltalk objects for use with SST's RMI Support depends on how the objects are to be used. All objects, regardless of how they interact with Java must define their corresponding Java class using:
The classes named in such methods must be defined in the Java type repository for the current application context. (See Java type information.) Several Smalltalk classes can map to the same Java class but one Java class can only be mapped to one Smalltalk class.
Objects which will be passed by value (serialized) must define the following method to answer true.
If an object should be passed as an array it should implement the following method to return true.
Serialized objects must also provide either instance variable accessors that correspond to their variable names (for example, a variable named foo must have the accessors foo and foo:) or specify getter and setter selectors in the Java type repository specification as outlined in Java type information.
Objects being represented remotely by stubs (passed by reference) must implement the following method to answer true.
Objects passed to SST as stubs (remote references from Smalltalk to Java) are represented in Smalltalk using generic stubs. That is, structurally all stubs look the same. It is only the remote object's class information and object identifier which varies. For this reason, the Smalltalk type definitions for all remoteable Java types should specify SstRmiGenericStub as their Smalltalk implementation class.