incubator-adffaces-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott O'Bryan (JIRA)" <adffaces-iss...@incubator.apache.org>
Subject [jira] Commented: (ADFFACES-438) Trinidad components don't use ViewHandler.getResourceUrl - custom ViewHandlers can fail due to this
Date Wed, 04 Apr 2007 17:26:32 GMT

    [ 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.


Mime
View raw message