Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 3.0
-
Fix Version/s: 3.0.1, EE-3.0.0.GA
-
Component/s: ACE-Components, Framework, ICE-Components, Sample Apps
-
Labels:None
-
Environment:ICEfaces and ICEfaces Applications
Description
FacesContext.getCurrentInstance() should not be used in static context. WebSphere Application Server 8 seems to complain about this. The issue is timing related. We should go through the code and make sure the usage is only done in non-static context to be safe.
To give an example. The SelectInputDateRenderer contains the following:
private static final String ID_SUFFIX = UINamingContainer.getSeparatorChar(FacesContext.getCurrentInstance()) + "j_idcl";
Currently, WAS8 can complain about this causing the ICEfaces application not to run.
Checking the usage of ID_SUFFIX, it only seems to be used in non-static context. The solution in this case is simple as we can remove the static keyword for the ID_SUFFIX and solve this particular usage. However, other static usages might need more work.
We use FacesContext.getCurrentInstance() extensively.