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, Bridge, Framework
-
Labels:None
-
Environment:ICEfaces 3 ACE portal portlet
-
Affects:Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial
Description
When running the Date Exporter component as a portlet, the export throws an exception on the server and the file is never downloaded by the client. The problem occurs in with both Mojarra and MyFaces:
Mojarra
18:37:57,969 ERROR [ResourceImpl:81] Resource handler=[com.sun.faces.application.resource.ResourceHandlerImpl@71c54632] was unable to create a resource for resourceName=[s2] libraryName=[null] contentType=[null]
MyFaces
17:54:39,017 ERROR [ResourceImpl:81] Resource handler=[org.apache.myfaces.application.ResourceHandlerImpl@1d9ff8e2] was unable to create a resource for resourceName=[s3] libraryName=[null] contentType=[null]
Mojarra
18:37:57,969 ERROR [ResourceImpl:81] Resource handler=[com.sun.faces.application.resource.ResourceHandlerImpl@71c54632] was unable to create a resource for resourceName=[s2] libraryName=[null] contentType=[null]
MyFaces
17:54:39,017 ERROR [ResourceImpl:81] Resource handler=[org.apache.myfaces.application.ResourceHandlerImpl@1d9ff8e2] was unable to create a resource for resourceName=[s3] libraryName=[null] contentType=[null]
Issue Links
- depends on
-
ICE-7925 ResourceRegistry resource names must be unique across restart
- Closed
The logging is coming from the PortletFaces Bridge as part of the MissingResourceImpl class.
When the Export button is clicked, a response is sent back that includes some JavaScript, including the URL to be used to retrieve the resource. Seems that the URL created by the ICEfaces Data Exporter looks like the following:
http://localhost:8080/web/guest/export?_dataExporter_WAR_showcaseportlet_javax.faces.resource=s2&p_p_col_count=1&p_p_col_id=column-1&p_p_id=dataExporter_WAR_showcaseportlet&p_p_lifecycle=2
The resource name is not a real resource but a dynamic one that is a key to a real resource stored in the session. When the the PortletFaces Bridge tries to create a resource, I don't think it likes the fact that it's not a real file that it can get at.