Archived

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

an old question about icepack

I know this is an old question and I have overviewed several threads about icepack. Then I tried some configurations but it still doesn't work.

I use Ice-2.1.0 in windowsXP and linux platforms.
I run "demo/icePack/simple" in 3 different hosts for icepack registry,icepacknode and client separately.

The config files are below:

config_reg
#Locator
Ice.Default.Locator=IcePack/Locator:default -p 12000 -h 10.16.0.200

#Registry
#
# IcePack registry configuration.
#
IcePack.Registry.Client.Endpoints=default -p 12000 -h 10.16.0.200
IcePack.Registry.Server.Endpoints=default -h 10.16.0.200
IcePack.Registry.Internal.Endpoints=default -h 10.16.0.200
IcePack.Registry.Admin.Endpoints=default -h 10.16.0.200
IcePack.Registry.Data=db/registry


config_node

#Locator
Ice.Default.Locator=IcePack/Locator:default -p 12000 -h 10.16.0.200

#
# IcePack node configuration.
#
IcePack.Node.Name=node201
IcePack.Node.Endpoints=default -h 10.16.0.201
IcePack.Node.Data=db/node201
IcePack.Node.CollocateRegistry=0

#
# Trace properties.
#
IcePack.Node.Trace.Activator=3
IcePack.Node.Trace.Adapter=2
IcePack.Node.Trace.Server=3


config_client

#Locator
Ice.Default.Locator=IcePack/Locator:default -p 12000 -h 10.16.0.200

I run the commands as:
[@node200] icepackregistry --Ice.Config=config_reg
[@node201] icepacknode --Ice.Config=config_node
[@node202] client.exe (on windowsXP)

Then, registry and packnode are normal, but client failed. The error is:
"no object adapter with id 'Server.Hello' is registered"
But when I start another packnode, it said " the same name server is already registered".

Why the registry can not bind the packnode to the client?

Help me, thx

Comments

  • benoit
    benoit Rennes, France
    I assume that the exact message is "a node with the same name is already registered and active". This message means that you can't start 2 icepacknode with the same name at the same time. The first message, "no object adapter with id 'Server.Hello' is registered", simply means that the simple application wasn't deployed.

    You need to modify the demo/Ice/simple/application.xml descriptor to deploy the servers on the node named "node200" instead of "node". Then, you should be able to deploy the application with the command:
    icepackadmin --Ice.Default.Locator="IcePack/Locator:default -p 12000 -h 10.16.0.200" -e 'application add "application.xml"'

    Let me know if this is still not clear!

    Benoit.
  • I have done it ,benoit

    Thank for your help first. It is midnight,haha

    I changed the "node" to "node201" in applicaiton.xml, and deployed as your command "icepackadmin...."

    But it says
    error: IcePack::DeploymentException:
    application `Simple' already exists


    What should i do,next?
  • benoit
    benoit Rennes, France
    Looks like you already deployed the application with the demo configuration (i.e.: on the node named 'node' which isn't running anymore). Please start with clean database directories:
    • Shutdown the node and the registry.
    • rm -r db/registry/* on the registry host.
    • rm -r db/node200/* on the node host.
    • Start again the node and the registry.
    • Deploy the application.

    Benoit.
  • it works well now

    it works well now . i think much incorrect information in db that makes the deployment fail.

    Thank you benoit very much! :)
  • benoit
    benoit Rennes, France
    No, the example aren't supposed to have some bugs :o

    I'm not sure why you're getting this Ice::IllegalIdentityException however, but in any case it shouldn't segfault. I'll try to reproduce it. Did you modify the source code or the application descriptor (except for the name of the node of course)?

    Benoit.
  • Thank you!!

    :p
    Have a good sleep