Archived

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

starting "ice" process (node/admin etc) via Java

IceFolk,

I am trying to start Ice process via the Runtime.exec(..) methods in Java.

I get the following exception when excuting my runIcePackNode.bat via a Java app on XP:

icepacknode: error: service caught unhandled Ice exception:
Network.cpp:764: Ice::DNSException:
DNS error: WSAHOST_NOT_FOUND
host: xxxx

Where "xxx" is the name of my machine.

Is there an environment variable/argument I need to pass to the process?

I am setting the classpath and path in the script that gets executed.
This is rather obvious since it does find the icepacknode.exe and launches it.
Note also that the script works fine when running from a dos prompt.

Thanks!
Bob

Comments

  • Is it something I said?

    Bob
  • This looks like a problem with the nameserver setup on your system. Try the following in a cmd.exe:

    nslookup xxx

    With xxx being the hostname that is displayed in the error message. Does this work? If not, then your nameserver is not set up correctly.
  • Marc,

    That's the problem.

    When I do an NLSLookup of "xxx", if finds it, but there is an additional suffix on the end of my machine name.

    This suffix does not appear in the error message, so I assume that is why Ice is having a problem.

    How do I resolve the two?

    Thanks!
    Bob
  • I would suggest to run your Ice process with --Ice.Trace.Network=3. This will allow you to see exactly which domain name is being used by the Ice run time. Once you know that exact domain name, see whether you can resolve it with nslookup. If not, the problem is either that the domain name is wrong, in which case you most likely have configured a proxy incorrectly, or that the DNS can't resolve the valid domain name, in which case you have to fix the DNS.

    Note that you can also use IP addresses instead of a domain name for proxies and endpoints -- if your environment does not allow you to touch the DNS config, using IP addresses instead of domain names will get you off the hook.

    Cheers,

    Michi.
  • Guys,

    Thanks! I will dig into in next week.

    Happy New Year!!!!
    Bob
  • Guys,

    I found what the problem was here.

    On XP, you need to set an enviroment variable:
    SystemRoot=c:\windows

    I was having trouble creating sockets in a process created from Runtime.exec() until I added this to my "setenv" script.

    I found this information on a Java user group.

    Thanks,
    Bob