Squeak SmalltalkJoker Squeak Smalltalk : Network : prevnext Connect Images Soap Nebraska Sockets

> As a neophyte Squeak user I need some recommendations on tools to allow
> distributed object communication between squeak images running on the
> same CPU as well as different physical computers.

There's SoapOpera (a SOAP layer), Nebraska (transparent image-image
communications), rST, and probably more.

Nebraska is in the stock image.
------------
SoapOpera uses 8823 as a default port.
So, If you would like to run two images on the same machine, you should
explicitly set the unused ports to SoapOpera images.

Changing the port is simple: SoapSetting defaultPort: 1212 (or something you
like).

Example:
First, you run the SoapOpera without explicit setting. (8823 will be used).
Second, you run the SoapOpera after setting the default port to 1212.

In the first image,
SoapExampleServiceImpl registerAllServices.

In the Second image,
SoapSetting defaultPort: 1212.
SoapExampleServiceImpl registerAllServices.

If you would like to access from the first image to the second one:
SoapExampleClient port: 1212.
SoapExampleClient new callHelloWorld.

The inverse way:
SoapExampleClient port: 8823.
SoapExampleClient new callHelloWorld.
--------------
Check out Socket class 'examples' protocol.
-------------
> How can I find out the port associated with an image (on Windows and Linux)?

You use a different port number for every socket you create.  A machine
can have more than one socket connections.  However, a machine only has
one ip address.  To find the ip address of your machine do
"NetNameResolver localHostAddress" you may have to do "Socket
initializeNetwork" first.