Trinidad components don't use ViewHandler.getResourceUrl - custom ViewHandlers 
can fail due to this
---------------------------------------------------------------------------------------------------

                 Key: ADFFACES-438
                 URL: https://issues.apache.org/jira/browse/ADFFACES-438
             Project: MyFaces ADF-Faces
          Issue Type: Bug
          Components: Components
    Affects Versions: 1.0.1-incubating-core-SNAPSHOT
            Reporter: Martin Marinschek
         Assigned To: Martin Marinschek
             Fix For: 1.0.1-incubating-core-SNAPSHOT


Trinidad's components all call:

CoreRenderer.toUri()

 when they encode their resource-urls.

This method does essentially the same as the JSF-Viewhandler's method 
getResourceUrl(), so there is no reason why the core-renderer shouldn't call 
this method. If the viewHandler's getResourceUrl() is not called, some other 
projects fail to work together with Trinidad, an example for this is Weblets by 
John Fallows which overwrites the ViewHandler's getResourceUrl() method.

Changing toUri() method to:

  static public String toUri(Object o)
  {
    if (o == null)
      return null;
    
    String uri = o.toString();

    // Treat two slashes as server-relative
    if (uri.startsWith("//"))
    {
        uri = uri.substring(1);
    }

    return 
FacesContext.getCurrentInstance().getApplication().getViewHandler().getResourceURL(
            FacesContext.getCurrentInstance(),uri);
  }

should fix the issue.

regards,

Martin



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to