Archived

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

how to debug ice?

I can debug demo hello's client and server, but when I debug ice through
helloC, it produced errors, shown in the below:

firstly, I step by step debugged into hello source codes , when got to "properties->load("config");"
it turned out "PropertiesI.cpp:168: Ice::SyscallException:
N0Rcš[„v‡eöN0ion: û|ß~~b"

so, I changed"properties->load("config");" to
"properties->load("D:\\specification\\ice\\Ice-1.1.1\\demo\\Ice\\hello\\config");"
this time , when got to "communicator = Ice::initializeWithProperties(argc, argv, properties);"
it turned out :
D:\specification\ice\Ice-1.1.1\demo\Ice\hello\client.exe: error: exception in Ic
eSSL plug-in:
ConfigParser.cpp:189: IceSSL::ConfigParseException:
1 errors during parsing
ssl configuration file parse error
, line 0, column 0
Message An exception occurred! Type:RuntimeException, Message:The primary docu
ment entity could not be opened. Id=../../../certs/sslconfig.xml

PluginManagerI.cpp:200: Ice::PluginInitializationException:
plug-in initialization failed: failure in entry point `IceSSL:create'



why?


thanks!

Comments

  • Do you run the demo from the directory demo/Ice/hello? Otherwise the file ../../../certs/sslconfig.xml can not be found.

    You can modify the line below in config.all to use an absolute directory name if you like:

    IceSSL.Server.CertPath=../../../certs

    Could be changed to:

    IceSSL.Server.CertPath=D:\specification\ice\Ice-1.1.1\certs

    Then you can start the client and server from every directory you wish.
  • Thanks! It works now.

    I changed
    "IceSSL.Client.CertPath=../../certs"
    to "IceSSL.Client.CertPath=D:/specification/ice/Ice-1.1.1/certs"
    previously. but I didn't modify "IceSSL.Server.CertPath".
    because I debuged ice through helloC,I thought it is independent of Server.

    I think I must look into the codes to find out how it works.