Class PortResolverImpl

  extended by
All Implemented Interfaces:

public class PortResolverImpl
extends java.lang.Object
implements PortResolver

Concrete implementation of 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 Summary
Method Summary
 PortMapper getPortMapper()
 int getServerPort(javax.servlet.ServletRequest request)
          Indicates the port the ServletRequest was received on.
 void setPortMapper(PortMapper portMapper)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public PortResolverImpl()
Method Detail


public PortMapper getPortMapper()


public int getServerPort(javax.servlet.ServletRequest request)
Description copied from interface: PortResolver
Indicates the port the ServletRequest was received on.

Specified by:
getServerPort in interface PortResolver
request - that the method should lookup the port for
the port the request was received on


public void setPortMapper(PortMapper portMapper)