Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 3.2, EE-3.2.0.BETA
-
Fix Version/s: EE-3.2.0.GA, 3.3
-
Component/s: ACE-Components
-
Labels:None
-
Environment:Portlets, ACE GMap Component
-
Assignee Priority:P1
Description
When running in a portlet, the following exception is thrown when the GMapResourceHandler is run and the isSecure method is called:
java.lang.UnsupportedOperationException
at javax.faces.context.ExternalContext.isSecure(ExternalContext.java:1932)
java.lang.UnsupportedOperationException
at javax.faces.context.ExternalContext.isSecure(ExternalContext.java:1932)
The ExternalContext.isSecure method is called by the GMapResourceHandler to determine whether the http or https protocol should be used to load the Google Maps API library. The problem stems from the fact that the portlet bridges' (both the PortletFaces and LiferayFaces versions) ExternalContext implementations do not override the isSecure method. ExternalContext.isSecure was only added in JSF 2.1 and the bridges are compile against JSF 2.0. I've contacted the LiferayFaces developer and they will be fixing it in a future release but in the meantime, we need to address this ourselves.