public class EasySSLProtocolSocketFactory extends Object implements SecureProtocolSocketFactory
EasySSLProtocolSocketFactory can be used to creats SSL Sockets
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);
HttpClient client = new HttpClient();
client.getHostConfiguration().setHost("localhost", 443, easyhttps);
// use relative url only
GetMethod httpget = new GetMethod("/");
client.executeMethod(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.
| Constructor and Description |
|---|
EasySSLProtocolSocketFactory()
Constructor for EasySSLProtocolSocketFactory.
|
| Modifier and Type | Method and Description |
|---|---|
Socket |
createSocket(Socket socket,
String host,
int port,
boolean autoClose)
Returns a socket connected to the given host that is layered over an
existing socket.
|
Socket |
createSocket(String host,
int port)
Gets a new socket connection to the given host.
|
Socket |
createSocket(String host,
int port,
InetAddress clientHost,
int clientPort)
Gets a new socket connection to the given host.
|
Socket |
createSocket(String host,
int port,
InetAddress localAddress,
int localPort,
HttpConnectionParams params)
Attempts to get a new socket connection to the given host within the given time limit.
|
boolean |
equals(Object obj) |
int |
hashCode() |
public EasySSLProtocolSocketFactory()
public Socket createSocket(String host, int port, InetAddress clientHost, int clientPort) throws IOException, UnknownHostException
ProtocolSocketFactorycreateSocket in interface ProtocolSocketFactoryhost - the host name/IPport - the port on the hostclientHost - the local host name/IP to bind the socket toclientPort - the port on the local machineIOException - if an I/O error occurs while creating the socketUnknownHostException - if the IP address of the host cannot be
determinedProtocolSocketFactory.createSocket(java.lang.String,int,java.net.InetAddress,int)public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, HttpConnectionParams params) throws IOException, UnknownHostException, 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 ProtocolSocketFactoryhost - 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 parametersIOException - if an I/O error occurs while creating the socketUnknownHostException - if the IP address of the host cannot be
determinedConnectTimeoutException - if socket cannot be connected within the
given time limitpublic Socket createSocket(String host, int port) throws IOException, UnknownHostException
ProtocolSocketFactorycreateSocket in interface ProtocolSocketFactoryhost - the host name/IPport - the port on the hostIOException - if an I/O error occurs while creating the socketUnknownHostException - if the IP address of the host cannot be
determinedProtocolSocketFactory.createSocket(java.lang.String,int)public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException
SecureProtocolSocketFactorycreateSocket in interface SecureProtocolSocketFactorysocket - the existing sockethost - the host name/IPport - the port on the hostautoClose - a flag for closing the underling socket when the created
socket is closedIOException - if an I/O error occurs while creating the socketUnknownHostException - if the IP address of the host cannot be
determinedSecureProtocolSocketFactory.createSocket(java.net.Socket,java.lang.String,int,boolean)Copyright © 2012 Apache Software Foundation. All Rights Reserved.