Hello,
I think I found bug in xmlrpc-3.0b1. Maybe it is corrected now, but also in
rc1 it was the same. I can't find the way to report this bug, also I write
email to you.
Bug - more correctly:
class: org.apache.xmlrpc.webserver.WebServer
method *
private
**synchronized* *void* setupServerSocket( *int* backlog) *throws*IOException
*{*
// Since we can't reliably set SO_REUSEADDR until JDK 1.4 is
// the standard, try to (re-)open the server socket several
// times. Some OSes (Linux and Solaris, for example), hold on
// to listener sockets for a brief period of time for security
// reasons before relinquishing their hold.
*for* (*int* i = 1; ; i++) {
*try* {
serverSocket = createServerSocket(port, backlog, address);
// A socket timeout must be set.
*if* (serverSocket.getSoTimeout() = 0) {
serverSocket.setSoTimeout(4096);
}
*return*;
}
*catch* (BindException e) {
*if* (i == 10) {
*throw* e;
}
*else* {
*long* waitUntil = System.currentTimeMillis();
*for* (;;) {
*long* l = waitUntil - System.currentTimeMillis();
*if* (l 0) {
*try* {
Thread.sleep(l);
}
*catch* (InterruptedException ex) {
}
}
}
}
}
}
}
Selected text seems to me like neverending cycle. I don't see the way out
and also variable l is always l=0.
Bye, hopefully it is not problem to correct it.
Stano.