i use jsse/ssl socket! when i use socket = (SSLSocket)factory.createSocket(host, port); if i give a exists host and not used port! i will wait for more than 10 minute!!! how can i set timeout, when creatSocket???
Hi, You can specify the timeout via invoking the method setSoTimeout(int timeOut), once you create the socket. This functionality is inherited from the java.net.Socket.
An additional bit of information:- the trick is first to create an unconnected Socket with the no-arg factory method and only then to connect it using connect(SocketAddress, timeout). - Peter
creatSocket(host,port) only this method will spend more than 10 minute when host exist but port not!! who can help me set timeout when only when creatSocket!!! and i know socket.setTimeOut(),but this method can do only socket is connectted!!!
Hi Allan, You can try what Peter was saying, first create an unconnected socket and then specify the timeout while connecting. The connect method throws a SocketTimeoutException - if the timeout expires before connecting. There is no need for you to wait for 10 mins. Specifying the timeout at socket creation is not available. I am not aware why they have not specified the timeout value at creation time.