[ 
https://issues.apache.org/jira/browse/ADFFACES-438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12486701
 ] 

Scott O'Bryan commented on ADFFACES-438:
----------------------------------------

We have to be very careful about doing this.  In ADF_Faaces 10.1.3.2 (the code 
which became trinidad), doing this resulted in "doubly encoded" and "wrongly 
encoded" URL's...  And there are a few exceptions where URL's shouldn't be 
encoded at all.  If someone wants to take on this task, make sure that the 
enhancements work as-is with all the current golden files.

> 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