Archived

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

How to start the iceBox in java for the storm service

I succeed in using the command "icebox --Ice.Config=D:/config.icebox_service " in windows server 2003 to start the icebox. But it will be existed a dos window. So now I want to Start the Java Server to discard that window. The main code is as follows.

Firstly, in a servelet class:
IceBox.Server server = new IceBox.Server();
server.main( "IceBox.Server", new String[0], "D:/config.icebox_service" );


Secondly, in D:/config.icebox_service:
IceBox.ServiceManager.Endpoints=tcp -p 9998
IceBox.Service.IceStorm=IceStormService,30:create --Ice.Config=D:/config.icebox_other
Freeze.DbEnv.IceStorm.DbHome=D:/db
IceStorm.InstanceName=DemoIceStorm
......

Finally,in D:/config.icebox_other:
Clock.Subscriber.Endpoints=tcp
IceStorm.TopicManager.Proxy=DemoIceStorm/TopicManager:default -p 10000
IceStorm.TopicManager.Endpoints=default -p 10000
IceStorm.Publish.Endpoints=default
IceStorm.Trace.TopicManager=2
IceStorm.Trace.Topic=1
IceStorm.Trace.Subscriber=1
.......

Then the Exception happened:

error: ServiceManager: class IceStormService,30:create not found
IceBox.FailureException
reason = "ServiceManager: class IceStormService,30:create not found"
at IceBox.ServiceManagerI.start(ServiceManagerI.java:244)
at IceBox.ServiceManagerI.load(ServiceManagerI.java:202)
at IceBox.ServiceManagerI.run(ServiceManagerI.java:107)
at IceBox.Server.run(Server.java:66)
at Ice.Application.main(Application.java:73)
at Ice.Application.main(Application.java:38)
at com.thtf.ezone.ezibs.jpc.iceapp.HessianRPC$1.run(HessianRPC.java:55)
Caused by: java.lang.ClassNotFoundException: IceStormService,30:create
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at IceBox.ServiceManagerI.start(ServiceManagerI.java:232)
... 6 more


What's wrong wiht me?

Comments

  • benoit
    benoit Rennes, France
    Hi,

    You're trying to load a C++ service with the Java IceBox server, that's not possible. You can only start Java services with the Java IceBox server. Perhaps you can run the C++ IceBox server as a Windows service instead?

    Cheers,
    Benoit.
  • So rapid reply!

    Thanks! I Have tried to do it for two hours!
  • I failed to register the icebox to be a windows service!

    Because icebox.exe provide no parameter about "install",instead of glacier!

    So glacier can be a windows service ,but icebox can't.

    can you do it?
  • benoit
    benoit Rennes, France
    Which Ice version do you use? Since Ice 3.1.0, you should be able to run IceBox as a Windows service.

    Cheers,
    Benoit.
  • thanks

    I will try to use version 3.1.0.
    Now my ice version is 3.0.1.