public class PortResolverImpl extends java.lang.Object implements PortResolver
PortResolver
that obtains the port from
ServletRequest.getServerPort().
This class is capable of handling the IE bug which results in an incorrect URL being
presented in the header subsequent to a redirect to a different scheme and port where
the port is not a well-known number (ie 80 or 443). Handling involves detecting an
incorrect response from ServletRequest.getServerPort()
for the scheme (eg
a HTTP request on 8443) and then determining the real server port (eg HTTP request is
really on 8080). The map of valid ports is obtained from the configured
PortMapper
.
Constructor and Description |
---|
PortResolverImpl() |
Modifier and Type | Method and Description |
---|---|
PortMapper |
getPortMapper() |
int |
getServerPort(javax.servlet.ServletRequest request)
Indicates the port the
ServletRequest was received on. |
void |
setPortMapper(PortMapper portMapper) |
public PortMapper getPortMapper()
public int getServerPort(javax.servlet.ServletRequest request)
PortResolver
ServletRequest
was received on.getServerPort
in interface PortResolver
request
- that the method should lookup the port forpublic void setPortMapper(PortMapper portMapper)