You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by "David Johnson (JIRA)" <no...@atlassian.com> on 2007/09/10 03:07:29 UTC

[Roller-JIRA] Commented: (ROL-1542) resource path in i18n directory or filename

    [ http://opensource.atlassian.com/projects/roller/browse/ROL-1542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_14097 ] 

David Johnson commented on ROL-1542:
------------------------------------

Before applying this patch I was able to upload a file named 余音萦绕在心中.jpg and successfully access it via the File Uploads page and  the URL produced by getWeblogResourceURL().
 
I also tried to create a directory named "余音萦绕在心中" but was unable to access it via the File Upload page.  I got an error message. When I try to enter the directory I get a "Error getting files list" error.

After applying the patch nothing has changed, I still can't cannot create a file-upload directory with Chinese characters. When I create the directory via the File-Upload page, I see that it is created correctly. But then when I upload a file to the new directory, the FileManager creates a new directory with an apparently scrambled name and puts the file there. See the attached screenshot (rol-1542-screenshot1.jpg).

Is this patch a complete fix for the problem? Looks like some more changes are necessary in the file manager to make I18N names in file-upload paths work correctly. 

- Dave

> resource path in i18n directory or filename
> -------------------------------------------
>
>                 Key: ROL-1542
>                 URL: http://opensource.atlassian.com/projects/roller/browse/ROL-1542
>             Project: Roller
>          Issue Type: Bug
>         Environment: trunk
>            Reporter: Jian Liu
>            Assignee: David Johnson
>             Fix For: 4.0
>
>         Attachments: MultiWeblogURLStrategy_java.patch, rol-1542-screenshot1.jpg
>
>
> if create a i18n name directory in a blog's resource space, then the resource path in resource url should be encoded.
> add below method in URLUtilities.java
>     /**
>      * URL encode a path string using UTF-8. The path seprator '/' will not be encoded
>      */
>     public static final String encodePath(String path) {
>         int i = path.indexOf('/');
>         StringBuffer sb = new StringBuffer();
> 		while(i!=-1) {
> 			sb.append(encode(path.substring(0,i))).append('/');
> 			path = path.substring(i+1);
> 			i = path.indexOf('/');
> 		}
> 		sb.append(path);
>         return sb.toString();
>     }
> then modified the getWeblogResourceURL method in MultiWeblogURLStrategy;

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/roller/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira