- From: Jim Whitehead <ejw@cs.ucsc.edu>
- Date: Thu, 9 Dec 2004 12:48:37 -0800
- To: "'Frank Lowney'" <frank.lowney@mac.com>, <w3c-dist-auth@w3.org>
- Message-Id: <200412092048.iB9KmiX8000016@cats-mx3.ucsc.edu>
The authoritative reference here is RFC 2396 http://www.ietf.org/rfc/rfc2396.txt According to the BNF productions in Appendix A, the plus character is perfectly legal within a URI, including HTTP scheme. RFC 2616 explicitly references RFC 2396. The relevant productions are: URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ] absoluteURI = scheme ":" ( hier_part | opaque_part ) hier_part = ( net_path | abs_path ) [ "?" query ] net_path = "//" authority [ abs_path ] abs_path = "/" path_segments path_segments = segment *( "/" segment ) segment = *pchar *( ";" param ) param = *pchar pchar = unreserved | escaped | ":" | "@" | "&" | "=" | "+" | "$" | "," Hope this helps. - Jim _____ From: w3c-dist-auth-request@w3.org [mailto:w3c-dist-auth-request@w3.org] On Behalf Of Frank Lowney Sent: Thursday, December 09, 2004 12:29 PM To: w3c-dist-auth@w3.org Subject: WebDAV, URL encoding and current Windows clients I am caught in the middle of a "he said - she said" kind of discussion about what constitutes a valid URI/URL for WebDAV and am posting here in the hope of getting an authoritative answer as to which statement is truer: use "+" or use "%20" Here's the story: There is a Learning Management System called WebCT Vista. It uses an Oracle DB back end and a java-based webserver called "WebLogic" from a company called BEA. The problem at hand is confined to Windows clients. Mac clients seems to work as well with this system as they do with Apache and WebSTAR V, The way WebCT Vista enables the use of WebDAV is that it generates a URI that the client copies and pastes into a WebDAV client application. Here's an example: http://vista.gsu.edu:8000/webct/webdav/131.96.160.58-1044482159055-328326100 1.flowney/University+System+of+Georgia/Georgia+College+and+State+University/ Documentation/Vista+3.0+Documentation/Vista+3.0+Dox.01/Section+Content WebCT Vista puts a "+" char in place of those spaces but this causes Windows clients to gag and report that "The folder you are trying to access is invalid" or words to that effect. Microsoft has published work around strategies for this (see below the dotted line). This problem manifests itself only where there are spaces in the path and only with the more recent Microsoft clients. Older clients don't seem to be bothered by this. The engineers at WebCT Inc say that the "+" is kosher citing authorities such as: If you look at this page: http://www.w3.org/International/O-URL-code.html It provides some java classes that does URI encoding. When you get the program running and entered a space, you will get a + in return. If you take a look at the source code, you can find this comment: "The space character ' ' is converted into a plus sign '+'." Others suggest that spaces should be encoded as %20 in order to be valid. Is this a peculiarity of Java code, an Oracke requirement or just idiosyncratic for WebCT Inc. More importantly, which encoding strategy is more valid, more robust? Has Microsoft gone and broken WebDAV on Windows? ------------------ Microsoft on WebDAV Issues ---------------------------- Some more information for anyone troubleshooting Windows WebDAV connections http://support.microsoft.com/default.aspx?scid=kb;en-us;269681 Error: You attempt to add a Web folder to the My Network Places folder, but you are unsuccessful and you receive the following error message: ˇ§The folder you entered does not appear to be valid ˇ§ Cause: This behavior may occur if you have a system policy that redirects the user's Application Data folder and prevents the creation of the Msdaipp folder that the Web Folders feature uses. The Msdaipp folder is normally located under the user's Userprofile\Application Data\Microsoft folder. When you do not use this system policy, the first time you create a Web folder in the My Network Places folder with the Add Network Place Wizard, a subdirectory is created. If you set a system policy to change the Userprofile\Application Data folder to a universal naming convention (UNC) on a network server, this wizard does not create the Msdaipp folder at the redirected location and you receive the preceding error message. Fix as suggested by a Microsoft Online Partner Support rep: 1. Open the UNC path specified Target Location Folder. 2. Ensure that you can view hidden files, and then open the Microsoft directory. 3. Create a folder called Msdaipp. 4. Check with this issue again. However, if the issue persists, please perform the following steps to create a new account with the Computer Administrator privilege and see how things are going on. 1) Click Start, and click Control Panel. 2) Double-click "User Accounts". 3) Click the "Create a new account" link. 4) Follow the instruction to create a new account with the Computer Administrator privilege. 5) Log off the current user account and then log on the new account. Also, please perform the troubleshooting steps in the following article: 287402 ˇ§Troubleshooting Web Foldersˇ¨ http://support.microsoft.com/?id=287402 A) Replace the + signs with spaces. e.g. <http://test.webct.com/webct/webdav/10.1.6.95-1084809904923-2001072000.20010 73000/Domain> http://test.webct.com/webct/webdav/10.1.6.95-1084809904923-2001072000.200107 3000/Domain Name/Test Instituite B) Sometimes the Web Folder client in Windows could have been changed by another piece of software (for example, Microsoft Office). Please consider following the instructions to restore the WebDAV client to the original one. 1. Find a file called webfldrs.msi (Normally under WINDOWS\SYSTEM32\webfldrs.msi - if you installed Windows XP Servicepack 1 you will find it under WINDOWS\ServicePackFiles\i386webfldrs.msi). E.g. C:\WINNT\system32 2. Start the installation with double-click or right-click -> webfldrs.msi. 3. Now you have to click on "Select reinstall mode". · Uncheck "Repair all detected reinstall problems". · Check "Force all files to be reinstalled, regardless of checksum or version". · Check "Verify that required user registry entries are present". · Check "Verify that required machine registry entries are present". · Check "Validate shortcuts". 4. Press OK and REINSTALL 5. Normally no reboot is required. Now the web folder client should have been restored as it was shipped. -- ===================================================================== Dr. Frank Lowney frank.lowney@gcsu.edu Director, Electronic Instructional Services, a unit of the Office of Information and Instructional Technology, Professional Pages: http://www.gcsu.edu/oiit/eis/ Personal Pages: http://www.faculty.de.gcsu.edu/~flowney Voice: (478) 445-5260 NOTICE: Please be advised that I am hearing impaired and communicate most effectively via e-mail. Follow-up summaries of telephone conversations by e-mail are most appreciated. ===================================================================== We don't make instruction effective, we make effective instruction more accessible.
Received on Thursday, 9 December 2004 20:50:17 UTC