Archived
This forum has been archived. Please start a new discussion on GitHub.
why can't I find my registed object?
Ice version (Ice 3.4.1)
Compiler version (JDK 1.6)
Operating system (Windows xp)
I integrate my IceBox's application into IceGrid application, so write the following config.
application.xml
My IceBox service code:
When I use the command "icegridadmin", can't find any object named by "hello"? Where is wrong?!
Compiler version (JDK 1.6)
Operating system (Windows xp)
I integrate my IceBox's application into IceGrid application, so write the following config.
#config.registry IceGrid.InstanceName=DemoIceGrid IceGrid.Registry.Client.Endpoints=tcp -p 4061 IceGrid.Registry.Server.Endpoints=tcp IceGrid.Registry.Internal.Endpoints=tcp IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier IceGrid.Registry.Data=db/master IceGrid.Registry.DynamicRegistration=1
#config.gird Ice.Default.Locator=DemoIceGrid/Locator:default -p 4061 IceGrid.Node.Name=node1 IceGrid.Node.Endpoints=default IceGrid.Node.Data=db/node
application.xml
<icegrid>
<application name="IceBoxDemo">
<node name="node1">
<icebox id="IceBoxServer" activation="on-demand" exe="java">
<description>A sample IceBox server</description>
<option>-Djava.ext.dirs=d:/demo/icegrid/;C:/Ice-3.3.1/lib/</option>
<option>IceBox.Server</option>
<properties>
<property name="IceBox.InstanceName" value="${server}"/>
<property name="Ice.Admin.Endpoints" value="tcp -h 127.0.0.1"/>
<property name="IceBox.Trace.ServiceObserver" value="1"/>
</properties>
<service name="ServiceA" entry="server.HelloServiceI">
<adapter name="Hello-${service}" endpoints="default"/>
</service>
</icebox>
</node>
</application>
</icegrid>
My IceBox service code:
package server;
import Ice.Communicator;
import IceBox.Service;
public class HelloServiceI implements Service {
private Ice.ObjectAdapter _adapter;
@Override
public void start(String name, Communicator communicator, String[] args) {
_adapter = communicator.createObjectAdapter(name);
_adapter.add(new PrinterI(),Ice.Util.stringToIdentity("hello"));
_adapter.activate();
}
@Override
public void stop() {
_adapter.destroy();
}
}
When I use the command "icegridadmin", can't find any object named by "hello"? Where is wrong?!
0
Comments
-
The file application.xml is wrong!
<icegrid> <application name="IceBoxDemo"> <node name="node1"> <icebox id="IceBoxServer" activation="on-demand" exe="java"> <description>A sample IceBox server</description> <option>-Djava.ext.dirs=d:/demo/icegrid/;C:/Ice-3.3.1/lib/</option> <option>IceBox.Server</option> <properties> <property name="IceBox.InstanceName" value="${server}"/> <property name="Ice.Admin.Endpoints" value="tcp -h 127.0.0.1"/> <property name="IceBox.Trace.ServiceObserver" value="1"/> </properties> <service name="ServiceA" entry="server.HelloServiceI"> <adapter name="Hello-${service}" endpoints="default"/> <------here,change name and add object info </service> </icebox> </node> </application> </icegrid>
The new application.xml:<icegrid> <application name="IceBoxDemo"> <node name="node1"> <icebox id="IceBoxServer" activation="on-demand" exe="java"> <description>A sample IceBox server</description> <option>-Djava.ext.dirs=d:/demo/icegrid/;C:/Ice-3.3.1/lib/</option> <option>IceBox.Server</option> <properties> <property name="IceBox.InstanceName" value="${server}"/> <property name="Ice.Admin.Endpoints" value="tcp -h 127.0.0.1"/> <property name="IceBox.Trace.ServiceObserver" value="1"/> </properties> <service name="ServiceA" entry="server.HelloServiceI"> <adapter name="${service}" id="${service}" endpoints="default"> <object identity="hello" type="::Demo::Hello"/> </adapter> </service> </icebox> </node> </application> </icegrid>
So, everything is ok!0