PDA

View Full Version : HME 1.4: jmDNS problems on Vista


F8ster
06-18-2006, 01:47 PM
[Also sent to the mailing list]

I installed Vista on a machine this weekend to see if my HME apps would run. I’m getting some errors I thought I should pass along.

The app is the Stock Viewer for TiVo (http://bitrazor.com/stock/doc/index.php). I’m using Java 1.5 update 7 on Vista Beta 2, build 5384, under Virtual PC 2004. This app is wrapped as a Windows service using exe4j. Main class is com.tivo.hme.host.sample.Main, with arguments com.bitrazor.stock.StockMain. The service installs properly, but fails to start. I get the following two sets of errors in the log when I try to start it:

java.net.SocketException: error setting options
at java.net.PlainDatagramSocketImpl.join(Native Method)
at java.net.PlainDatagramSocketImpl.join(Unknown Source)
at java.net.MulticastSocket.joinGroup(Unknown Source)
at javax.jmdns.JmDNS.init(Unknown Source)
at javax.jmdns.JmDNS.<init>(Unknown Source)
at com.tivo.hme.host.sample.Main.<init>(Main.java:185)
at com.tivo.hme.host.sample.Main.<init>(Main.java:60)
at com.tivo.hme.host.sample.Main.main(Main.java:534)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.exe4j.runtime.WinLauncher.main(Unknown Source)

HME SDK 1.4 (TiVo, Inc.)
error: error setting options
usage: Main [options] class

Options:
--port <port> listen on a specific port
--intf <interface> listen on a specific interface
--nomdns <interface> listen on a specific interface, without mdns
--launcher <file> start factories listed in file
--jars <dir> scan directory for HME app jar files
--jar <jarfile> start factory for the given jar


I have also tried launching it manually using the following command line, and I get the same errors.

java -cp lib\Stock_1.20_TiVo_UI.jar;lib\bananas.jar;lib\hme.jar;lib\h me-host-sample.jar;lib\jaxb-api.jar;lib\jaxb-impl.jar;lib\jaxb-libs.jar;lib\jaxb-xjc.jar;lib\jax-qname.jar;lib\namespace.jar;lib\relaxngDatatype.jar;lib\Stoc k_1.10_Util.jar;lib\swing-layout-1.0.jar com.tivo.hme.host.sample.Main com.bitrazor.stock.StockMain

Adding “–nomdns 192.168.1.101” to the command line makes the error go away. (I can’t find the app in the list on my TiVo when I do this, even if I manually add 192.168.1.101 to the server list. This may, however, be a side-effect of running under Virtual PC, so I’m not worried about that problem for now.)

It looks to me like an update to jmDNS will be required to support Vista. This may be related to the fact that IPv6 is installed by default on Vista, and there seems to be some indication that jmDNS doesn’t play well with IPv6.

I’ll try my other apps (NetFlix RSS Reader, TrafficCam Viewer) and if I find anything different, I’ll send an update.

-- Dave