|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory
public class EasySSLProtocolSocketFactory
EasySSLProtocolSocketFactory can be used to creats SSL Socket
s
that accept self-signed certificates.
This socket factory SHOULD NOT be used for productive systems due to security reasons, unless it is a concious decision and you are perfectly aware of security implications of accepting self-signed certificates
Example of using custom protocol socket factory for a specific host:
Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443); URI uri = new URI("https://localhost/", true); // use relative url only GetMethod httpget = new GetMethod(uri.getPathQuery()); HostConfiguration hc = new HostConfiguration(); hc.setHost(uri.getHost(), uri.getPort(), easyhttps); HttpClient client = new HttpClient(); client.executeMethod(hc, httpget);
Example of using custom protocol socket factory per default instead of the standard one:
Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443); Protocol.registerProtocol("https", easyhttps); HttpClient client = new HttpClient(); GetMethod httpget = new GetMethod("https://localhost/"); client.executeMethod(httpget);
DISCLAIMER: HttpClient developers DO NOT actively support this component. The component is provided as a reference material, which may be inappropriate for use without additional customization.
Field Summary | |
---|---|
private static org.apache.commons.logging.Log |
LOG
Log object for this class. |
private SSLContext |
sslcontext
|
Constructor Summary | |
---|---|
EasySSLProtocolSocketFactory()
Constructor for EasySSLProtocolSocketFactory. |
Method Summary | |
---|---|
private static SSLContext |
createEasySSLContext()
|
Socket |
createSocket(Socket socket,
String host,
int port,
boolean autoClose)
|
Socket |
createSocket(String host,
int port)
|
Socket |
createSocket(String host,
int port,
InetAddress clientHost,
int clientPort)
|
Socket |
createSocket(String host,
int port,
InetAddress localAddress,
int localPort,
org.apache.commons.httpclient.params.HttpConnectionParams params)
Attempts to get a new socket connection to the given host within the given time limit. |
boolean |
equals(Object obj)
|
private SSLContext |
getSSLContext()
|
int |
hashCode()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final org.apache.commons.logging.Log LOG
private SSLContext sslcontext
Constructor Detail |
---|
public EasySSLProtocolSocketFactory()
Method Detail |
---|
private static SSLContext createEasySSLContext()
private SSLContext getSSLContext()
public Socket createSocket(String host, int port, InetAddress clientHost, int clientPort) throws IOException, UnknownHostException
createSocket
in interface org.apache.commons.httpclient.protocol.ProtocolSocketFactory
IOException
UnknownHostException
ProtocolSocketFactory.createSocket(java.lang.String,int,java.net.InetAddress,int)
public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, org.apache.commons.httpclient.params.HttpConnectionParams params) throws IOException, UnknownHostException, org.apache.commons.httpclient.ConnectTimeoutException
To circumvent the limitations of older JREs that do not support connect timeout a
controller thread is executed. The controller thread attempts to create a new socket
within the given limit of time. If socket constructor does not return until the
timeout expires, the controller terminates and throws an ConnectTimeoutException
createSocket
in interface org.apache.commons.httpclient.protocol.ProtocolSocketFactory
host
- the host name/IPport
- the port on the hostclientHost
- the local host name/IP to bind the socket toclientPort
- the port on the local machineparams
- Http connection parameters
IOException
- if an I/O error occurs while creating the socket
UnknownHostException
- if the IP address of the host cannot be
determined
org.apache.commons.httpclient.ConnectTimeoutException
public Socket createSocket(String host, int port) throws IOException, UnknownHostException
createSocket
in interface org.apache.commons.httpclient.protocol.ProtocolSocketFactory
IOException
UnknownHostException
ProtocolSocketFactory.createSocket(java.lang.String,int)
public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException
createSocket
in interface org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory
IOException
UnknownHostException
SecureProtocolSocketFactory.createSocket(java.net.Socket,java.lang.String,int,boolean)
public boolean equals(Object obj)
equals
in class Object
public int hashCode()
hashCode
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |