Web Content: Link to a document with a space in the document name fails

Description

Web Content: Link to a document with a space in the document name fails because the system will generate a "+" to fill in the gap. For example, if the document name is "George Washington.doc", it becomes "George+Washington.doc". This throws off the URL because the URL being passed something like this: /documents/10180/0/websphere+outline.odt. The work around is if the user replaces the + with %20, then the URL /documents/10180/0/websphere%20outline.odt, then the document can be retrieved.

Steps to reproduce:
1. Go to the Control Panel> Documents and Media.
2. Upload two documents: one document has only one name while the other has a space in the name. (E.g. "test.doc" and "test test.doc")
3. Go to the Control Panel> Web Content> Structures.
4. Create the structure with the rows below:

  • Head

  • Image

  • Documents.

  • Body.

5. Save the structure as Structure 1.

6. Go to the Control Panel> Web Content> Templates.
7. Select Structure 1 as the structure.
8. Click Launch Editor for Velocity.
9. Enter the following:

<h1>$Head.getData()</h1>
<a href="${Documents.data}">Document Library Link</a>
<img src="$Image.getData()"/>
<p>$Body.getData()</p>

10. Save the template as Template 1.
11. Add a page.
12. Add the Web Content Display portlet.
13. Add a new Web Content article.

  • Choose Structure 1/ Template 1.

  • Enter a title.

  • Enter content in the Content field.

  • Select an image.

  • Select the document with only one name from the Documents and Media portlet.

  • Publish

14. Verify that the Document Library Link is correct by clicking the link and downloading the document.

15. Edit the article.

  • Select the document with a space in the name.

  • In the URL field, there is a now a plus sign in the document name. (E.g. /documents/10180/0/websphere+outline.odt.) The original file name did not have the plus symbol (See screenshots.)

  • Publish the article.

16. Click the document library link. This causes the system to crash and generate a No DLFileEntry exception (see log). This is expected because of the + in the file name. The user could remove the + or replace the + with %20 before publishing and leave the space in the URL field but the user should not have to take this step.

Environment

Tomcat 7.0 + MySQL 5. 6.1.x GIT ID: 538c5571b34ff4fba8579db4fb562a1580779d51 Tomcat 7.0 + MySQL 5. 6.2.x Revision: 97653.

Attachments

4

Activity

Show:

Tammy FongApril 10, 2012 at 8:56 PM

PASSED Manual Testing following the steps in the description.

Fixed on:
Tomcat 6.0 + MySQL 5. 6.0.x GIT ID: 9950f3a739626b251b4883636820229b1ff83b1f.

Michael SaechangMarch 20, 2012 at 3:06 PM

has now been resolved. Please test. Thank you.

Cynthia WilburnMarch 12, 2012 at 2:02 PM

Reopening to add 6.1.1 CE GA2. Close as Fixed.

Tammy FongJanuary 19, 2012 at 2:54 AM

PASSED Manual testing following the steps in the description.

Reproduced on:
Tomcat 7.0.23 + MySQL 5. 6.2.x GIT ID: 9a7e363d3e8fd8b425c5061cf76e008f188143c5.

Clicking the document's link will direct user to the error message:

and a NoSuchFileEntryException error in console.

Fixed on:
Tomcat 7.0.23 + MySQL 5. 6.1.x GIT ID: 6f65561a510cc054dbb4184bfaad201c465141e5.
Tomcat 7.0.23 + MySQL 5. 6.2.x GIT ID: 04e4f5c0c063f3b4fffb7b01b73a71bb59683c82.

Clicking the document's link will direct user to a download screen.

Michael SaechangJanuary 18, 2012 at 3:07 PM

Committed on:
6.1.x GIT ID: 9f217cbb13beac2e24c2f33122319bbd9c5d6e51.
6.2.x GIT ID: bf2cb4e33e5b5c2a32bbdbbd3c6b21e0fd3942a8.

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Branch Version/s

6.1.x
6.0.x

Backported to Branch

Committed

Fix Priority

3

Git Pull Request

Components

Priority

Zendesk Support

Created January 10, 2012 at 11:11 AM
Updated June 24, 2023 at 3:37 PM
Resolved October 3, 2012 at 4:58 PM