Archived
This forum has been archived. Please start a new discussion on GitHub.
Problem with IceBox 3.2.0?
I have been trying to set up an IceBox service based on the examples provided in Ice 3.2.0 democs (C#).
I replaced all the "Hello" demo code with my own code and have made sure that I am following the example provided in democs/IceBox/hello.
When I start the icebox service with:
iceboxnet --Ice.Config=config.icebox
I get the following error:
C:\dev\GGE\GGE\AutomatonFactoryService>iceboxnet --Ice.Config=config.icebox
iceboxnet.exe: error: IceBox.FailureException: FailureException
reason = "ServiceManager: unable to load service 'AutomatonFactoryService.dll:AutomatonFactoryServiceI': InvalidCastException to Ice.PluginFactory"
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 303
at ServiceManagerI.load(String name, String value) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 218
at ServiceManagerI.run() in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 105
Caused by: System.InvalidCastException: Unable to cast object of type 'AutomatonFactoryServiceI' to type 'IceBox.Service'.
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 297
Where my config file looks like:
IceBox.InstanceName=ServiceIceBox
IceBox.ServiceManager.Endpoints=tcp -p 9998
IceBox.Service.AutomatonFactory=AutomatonFactoryService.dll:AutomatonFactoryServiceI --Ice.Config=config.service
Ice.Warn.Connections=1
After going through the example and my code many many times, I decided to see if the example produced the same results. I cut all the SSL stuff out of the config files for the "hello" demo and voila! Same problem.
C:\dev\Ice-3.2.0\democs\IceBox\hello>iceboxnet --Ice.Config=config.icebox
iceboxnet.exe: error: IceBox.FailureException: FailureException
reason = "ServiceManager: unable to load service 'helloservice.dll:HelloServiceI': InvalidCastException to Ice.PluginFactory"
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 303
at ServiceManagerI.load(String name, String value) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 218
at ServiceManagerI.run() in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 105
Caused by: System.InvalidCastException: Unable to cast object of type 'HelloServiceI' to type 'IceBox.Service'.
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 297
Note how the 3.2.0 code is returning an error referencing 3.1.0 (related?)
I have reluctantly decided to post here knowing full well that the problem is probably on my end... but I am stuck and need a sanity check
I replaced all the "Hello" demo code with my own code and have made sure that I am following the example provided in democs/IceBox/hello.
When I start the icebox service with:
iceboxnet --Ice.Config=config.icebox
I get the following error:
C:\dev\GGE\GGE\AutomatonFactoryService>iceboxnet --Ice.Config=config.icebox
iceboxnet.exe: error: IceBox.FailureException: FailureException
reason = "ServiceManager: unable to load service 'AutomatonFactoryService.dll:AutomatonFactoryServiceI': InvalidCastException to Ice.PluginFactory"
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 303
at ServiceManagerI.load(String name, String value) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 218
at ServiceManagerI.run() in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 105
Caused by: System.InvalidCastException: Unable to cast object of type 'AutomatonFactoryServiceI' to type 'IceBox.Service'.
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 297
Where my config file looks like:
IceBox.InstanceName=ServiceIceBox
IceBox.ServiceManager.Endpoints=tcp -p 9998
IceBox.Service.AutomatonFactory=AutomatonFactoryService.dll:AutomatonFactoryServiceI --Ice.Config=config.service
Ice.Warn.Connections=1
After going through the example and my code many many times, I decided to see if the example produced the same results. I cut all the SSL stuff out of the config files for the "hello" demo and voila! Same problem.
C:\dev\Ice-3.2.0\democs\IceBox\hello>iceboxnet --Ice.Config=config.icebox
iceboxnet.exe: error: IceBox.FailureException: FailureException
reason = "ServiceManager: unable to load service 'helloservice.dll:HelloServiceI': InvalidCastException to Ice.PluginFactory"
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 303
at ServiceManagerI.load(String name, String value) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 218
at ServiceManagerI.run() in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 105
Caused by: System.InvalidCastException: Unable to cast object of type 'HelloServiceI' to type 'IceBox.Service'.
at ServiceManagerI.startService(String service, String entryPoint, String[] args) in c:\src\vc80\stage\IceCS-3.1.0\src\IceBox\ServiceManagerI.cs:line 297
Note how the 3.2.0 code is returning an error referencing 3.1.0 (related?)
I have reluctantly decided to post here knowing full well that the problem is probably on my end... but I am stuck and need a sanity check
0
Comments
-
More Info
The problem listed above occured on/under:
Windows XP service Pack 2
HP 2.0 Ghz Pentium M with 1 GB RAM
Visual Studio 2005 Professional0 -
Hi,
My guess is that the iceboxnet executable in your PATH is actually from Ice 3.1.0. Have you checked that?
Take care,
- Mark0 -
Multiple Ice Versions
Well... yes... I had two versions of Ice installed and while my ICE_HOME and ICE_PATH environment variables were set to 3.2.0, my PATH contained 3.1.0.
PEBCAK (Problem Exists Between Chair And Keyboard)
By Fixing that, rebooting, and rebuilding everything my program now works.
Thanks!0