I'm using version 1.0.0.RC5 of jSLP.
The problem is that if the PC looses conectivity (for example, one WiFi network is now unavailable), jSLP throws an exception when sending a message. And if the machine reconnects to another network, using different IP address, the new address is not used by the library.
This is caused because the list of network interfaces are obtained when the library is started, but if the conditions change, the library can't handle it.
I'd suggest to request the list of interfaces each time a message is sent through the network, so that the list of interfaces is always up to date. This requires small changes in the SLPCore class. I attach a patch file with the differences between my suggestion and the 1.0.0.RC5 version.
Patch file with the suggestion to solve the issue
This is a more fundamental problem because jSLP is backwards compatible to Java 1.2 and in versions earlier than 1.4 there is not way to enumerate the network interfaces. The backwards compatibility made sense in times where OSGi was supporting this but with the recent versions of OSGi requiring a 1.4 compatible VM, this might be reconsidered.
Cheers,
Jan.