Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.1.5, 2.0-refactoring, 2.0.0
-
None
-
Tomcat 5.5.26
Description
The method setSecure() on org.apache.pluto.internal.impl.PortletURLImpl is implemented as follows:
public void setSecure(boolean secure) throws PortletSecurityException {
PortletURLProvider urlProvider = container
.getRequiredContainerServices()
.getPortalCallbackService()
.getPortletURLProvider(servletRequest, internalPortletWindow);
if(urlProvider.isSecureSupported())
}
The problem is that if the URL provider supports secure URLs, an exception is thrown. This code should be changed as follows:
public void setSecure(boolean secure) throws PortletSecurityException {
if(!secure) { return; }
PortletURLProvider urlProvider = container
.getRequiredContainerServices()
.getPortalCallbackService()
.getPortletURLProvider(servletRequest, internalPortletWindow);
if(urlProvider.isSecureSupported()) { urlProvider.setSecure(); } else { throw new PortletSecurityException("Secure URLs not supported."); }
}