Archived

This forum has been archived. Please start a new discussion on GitHub.

IcePack question

Hi there,

the documentation mentions a way to use IcePack that doesn't include server activation/ IcePack nodes but only the IcePackRegistry.

However, can you please give an example on how to create/ run servers and clients using the registry and without the nodes?

regs,

Stephan

Comments

  • mes
    mes California
    Hi Stephan,

    You would start the IcePack registry server (icepackregistry) and define at least the following properties:
    • IcePack.Registry.Client.Endpoints
    • IcePack.Registry.Server.Endpoints
    Your clients need to define the property Ice.Default.Locator to have the proxy for the IcePack registry's locator object. Therefore if the registry's client endpoints are defined as follows:

    IcePack.Registry.Client.Endpoints=tcp -p 12000

    Then the locator proxy can be constructed like this:

    Ice.Default.Locator=IcePack/Locator:tcp -p 12000

    Notice that this proxy contains the registry's client endpoint(s).

    Now, if you want to use object adapter ids in your indirect proxies (e.g., MyObject @ MyAdapter), you will also need to define Ice.Default.Locator in your server(s), and define the AdapterId property for each object adapter.

    For example, if you have an object adapter named MyAdapter, then your server configuration would contain the following:

    Ice.Default.Locator=IcePack/Locator:tcp -p 12000
    MyAdapter.AdapterId=MyAdapter
    MyAdapter.Endpoints=tcp

    If you want to use proxies with well-known objects, then you must either register the objects manually using icepackadmin, or do it programmatically from your servers using the IcePack::Admin::addObject operation.

    Let me know if you have any other questions.

    Take care,
    - Mark