10.1 Client Software

The number of approaches to writing WebDAV client software is surprisingly high. Each approach involves different models for whether the files are stored only on the server or are cached locally or even primarily stored locally. Each approach involves a different way of presenting the user interface.

Stand-Alone WebDAV Explorer

A few WebDAV clients are designed primarily as WebDAV clients, but they are in the minority because most users don't want yet another client application unless it's a really important one. The standard approach seems to be to implement a graphical user interface to mimic the way an existing file system explorer tool works, such as Windows Explorer. Typically, users browse through folders by clicking to open them. Cadaver, although not a graphical tool, is similar to these Explorer tools because it exists only to send WebDAV commands.

Mounted Drive Client

A client that acts a mounted drive makes a remote repository appear as if it is a locally mounted hard drive or other storage device. On Windows, a mounted drive client typically allows the client to enter a WebDAV URL to a collection and then assigns a local drive letter to that remote repository. Then any application that opens or saves files can theoretically use the remote repository. This works even for applications that do not support WebDAV.

A mounted drive client may also keep a local cache of remote files and directory structure, synchronizing these with the server. When the user is online, local caching can allow a file and folders to be reopened more quickly. The files may even be available offline. However, it's quite difficult to keep property values synchronized offline, because WebDAV provides no reliable way to tell when properties change.

The user interface for a mounted drive client may be quite minimal, like those for Web Folders, Windows XP WebDAV Redirector, and Xythos WebFile Client. All that is needed is a way for the user to mount a new repository, because there can be much reuse of the existing navigation user interface on the client operating system.

Authoring Applications Using WebDAV for Primary Storage

This is the largest category of WebDAV client software. Most Microsoft and Adobe authoring applications now have the ability to store documents on a WebDAV. The approach can be very straightforward, simply allowing the file to be saved to a remote location identified by an HTTP URL rather than a local folder. However, in practice it may be a little more complicated. For example, MS Office requires the user to set up a Web Folder first and does not allow the user to save directly to a named URL.

Authoring Applications Using WebDAV to Publish

The Adobe authoring applications typically allow the user to publish documents directly to a WebDAV location. The user is expected to publish the document to the repository only when it is complete, and so the application does not save the file to the repository periodically while it is being edited (unlike Office). This is because the Adobe usage scenarios are different from the Office usage scenarios:

  • Users are not expected to be connected to the Internet or a local area network at all times. Thus, they must always be able to easily save the document locally. The connection, when it exists, may be as slow as a home telephone line.

  • Documents may be very large. Saving the document multiple times to the WebDAV server while it is being edited may be prohibitively slow.

Given these different assumptions, Adobe chose a slightly different user model. Rather than incorporate WebDAV support directly into the File Open and Save dialogs (which are still only used to save locally or to a locally networked file system), these applications present a publishing "workflow" interface to users.

Applications Using WebDAV to Store Custom Shared Data

A few applications are capable of storing not their primary document data but secondary, shared data, on a WebDAV repository. Adobe Acrobat does this with annotations to Acrobat documents.

Site Management Tools

Some Web site management tools are now capable of using WebDAV to manage the site. The simple but powerful command-line tool "sitecopy" is an example.

10.1.1 Microsoft Web Folders and Office

Microsoft added WebDAV client functionality to Office and Windows by extending Internet Explorer (and thus, the regular Windows Explorer) to allow it to mount WebDAV repositories. Office cannot use WebDAV without one of these mount points, called a Web Folder.

Stand-Alone Web Folders

Web Folders is an extension to Microsoft Explorer, the file and folder navigation user interface that comes with Microsoft Windows. A Web Folder makes a WebDAV repository appear like a local file folder. Users can open and create subfolders and move and copy files as though the files were local. Files can be moved and copied within the repository, between the repository and a local drive, or between two repositories.

Web Folders supports SSL, and it can use either Basic or Digest authentication. When given the choice between Basic and Digest, however, it chooses the first one it sees, rather than the most secure.

Web Folders does a little more than just WebDAV. It can also mount an FTP repository, a Windows network directory share, a Web server running Office Server Extensions, or a Web server running the FrontPage protocol. In the Microsoft literature, it's sometimes difficult to distinguish between features supported via WebDAV and features available only via FrontPage or Office Server Extensions using proprietary mechanisms. For example, the discussion and subscription features of Office Server Extensions are not available using WebDAV.

Office 2000

When Office 2000 (or later versions) is used along with Web Folders, more functionality becomes available. It's now possible to open and save to and from the repository directly within the authoring application. When files are opened and closed, they are automatically locked and unlocked, thus greatly improving the experience for multiple authors.

It's still not possible, however, to view or change properties. Even properties defined in RFC2518, such as creationdate, are not visible.

Other Applications

Most Windows applications do not really work with Web Folders. Web Folders appears to be a drive, so the user can double-click on a file within a Web Folder to open it in the appropriate application. However, most Windows applications are incapable of saving the file back to the Web Folder (the application would have to use a special library component to do so). Instead, the file is opened as if it were a regular Web resource, not a WebDAV-capable resource. There are two possible behaviors:

  • If the Web browser can display the file, the file will be opened in the Web browser, like a regular Web page.

  • If the Web browser can't display the file, the Web browser will prompt the user to download the file or open it. If the user chooses to open the file, it will be saved to the Web browser's cache and opened by the application that is configured to open that file type. However, if the user tries to save from that application, the file will be saved to the local cache, rather than to the WebDAV repository.

Still, Web Folders is a useful way to access files on a WebDAV server. Even without the ability to directly save files from these applications, the user can edit and save files locally and then use Web Folders to copy the content to the WebDAV server.

How to Get Web Folders

Web Folders is available with IE 5.0 and 5.5 as an optional Web authoring feature, available to select during installation. Thus, any Windows platform that can install IE 5.0 or later can use Web Folders.

Windows IE 6.0 does not include Web Folders as an install option, because Windows 98 Second Edition, Windows 2000, and WinME come with Web Folders already installed.

The user might find it a little difficult to find information about Web Folders because it's not a product; it's a feature that is available with several products. It's probably easiest to go to the Microsoft Web site (www.microsoft.com) and start searching. Microsoft Support articles explain how to install and use Web Folders in IE 5.0 [q195851] and how to get Web Folders [q298637].

Web Folders Limitations

In addition to working only with Office (so far), Web Folders has some limitations as a WebDAV client:

  • It is not possible to manually lock or unlock WebDAV resources on the server. Office applications use locks automatically, not in response to user commands.

  • The only properties that users may view are getcontentlength, getlastmodified, and getcontenttype. Further, users can see getlastmodified only if the WebDAV server supports a specific nonstandard data type attribute (Section 9.2.4).

  • Custom properties cannot be created, changed, or viewed.

  • Web Folders is slow to use over the Internet. Although it uses an Internet standard protocol, it was designed with intranet latency speeds in mind. It uses many more requests to achieve an operation than other clients tend to. On a fast connection or a local area network, this should not be a problem.

Server Support for Web Folders

Microsoft IIS 5.0, Apache mod_dav, and Xythos WebFile Server have all demonstrated support for Office Web Folders. However, it can't be assumed that a server supporting WebDAV can automatically support Web Folders. There are a number of tricks to making Web Folders work most important, returning the MS-Author-Via header and using the custom data types discussed in Sections 9.2.4 and 9.8.4.

10.1.2 Windows XP WebDAV Redirector

Windows XP integrates WebDAV more directly into the file system. A user can create a mount point, or network drive mapping, to a WebDAV repository. Once this mapping is created, the WebDAV repository is assigned a drive letter and can be used just like any network drive. This includes opening and saving files directly from regular applications such as Notepad and WordPad, as well as creating files and folders and moving and copying files between drives, so the Redirector is more powerful than Web Folders.

The XP Redirector works from the command line as well as from the Explorer GUI. Users can enter commands to mount drives:

 
 net use * http://www.webdav.org/ passwrd /user:username 

Unfortunately, early versions of the redirector had a few problems:

  • Windows XP assumes that any WebDAV repository begins at the root of the server path. If a user mounts http://www.example.com/hr/ergonomics, then the OPTIONS request to http://www.example.com/ must show WebDAV support or the Redirector will fail.

  • The XP Redirector does not handle default namespaces (at least for the DAV: namespace) as required by the Namespaces recommendation. To work with the XP Redirector anyway, WebDAV servers must use specific, non-null prefixes for namespaces rather than declare the namespace default.

  • The Basic authentication headers include the NT domain name in the user name by default, rather than use the standard "realm" field provided by the server. The server can easily see this, so the server can allow the XP Redirector client to authenticate by stripping off the NT domain name.

  • The Digest authentication header also includes the NT domain name in the user name. Here it's even harder for the server to make allowances, because the username isn't sent in the clear, it's irreversibly hashed. The server must apply the hash algorithm to the exact same string that the client used in order for the hashes to match. Another possible workaround is for the user to specifically select "log on as a different user" in the mount wizard.

Hopefully, these problems will be fixed in service packs or Windows XP updates.

10.1.3 Mac OS X WebDAV-FS

Mac OS X was the first operating system to ship with full built-in WebDAV client support that any application can use. The WebDAV-FS client acts as an explorer, displaying the remote repository much as if it were a local file folder. There are a few known problems:

  • In early releases of Mac OS X, WebDAV-FS does not connect to servers running on ports other than port 80.

  • WebDAV-FS does not support SSL/TLS.

10.1.4 Adobe Authoring, Graphics, and Web Design Products

An increasing number of Adobe products use WebDAV to share images, Web pages, and other files among a group of collaborators. In many of Adobe's authoring products, the WebDAV support may be a little hard to find because the protocol is part of its "workflow" support. For example, in Photoshop, the user must follow the "workflow" process in order to publish documents to a WebDAV server.

Some product highlights:

  • GoLive 5.0 can upload and synchronize a locally edited Web site with a WebDAV server.

  • Photoshop 6.0, ImageReady 3.0, InDesign 2.0, and Illustrator 10 use WebDAV in workflow support, to publish finished files to a WebDAV server or load files from that location. Work in progress is saved locally.

  • Acrobat 5.0 not only shares Acrobat documents online, it allows colleagues to add comments to Acrobat documents (without changing the document itself) and view each other's comments by storing those documents on any WebDAV server.

  • InScope adds workflow management and richer collaboration to InDesign 1.5, Photoshop 6.0, and InCopy 1.0 using the WebDAV protocol.

10.1.5 Xythos WebFile Client

Xythos WebFile Client is a drive-mounting client for Windows. It supports FTP as well as HTTP/WebDAV.

The Xythos client allows some offline capability as well. Even when the computer with the Xythos client software is no longer connected to the network, the user can modify cached resources. When the Xythos client regains access to the network, cached resources are synchronized.

The Intellittach feature makes it easier for users to share files via email. Rather than email the entire file and end up with multiple (perhaps inconsistent) stored versions, Intellittach encourages users to email each other links to WebDAV resources.

The Xythos client offers advanced WebDAV functionality: custom property manipulation, versioning, and access control management.

10.1.6 kStore Explorer

The kStore Explorer client from kCura is a remote repository explorer for Windows, or a tool for managing documents on a repository. It supports standard WebDAV repositories in general as well as Exchange and Sharepoint servers, including some of the nonstandard features of those servers.

kStore Explorer has powerful search and filtering functionality, making it an exceptional client for navigating large repositories with many files. It also has strong metadata support to make it particularly useful when the repository uses custom properties.

10.1.7 Goliath for Macintosh

Goliath is an open-source WebDAV browsing client for Macintosh. It was the first application to implement WebDAV on Macintosh.

10.1.8 Dreamweaver 4

Macromedia Dreamweaver is a popular Web site development application. Version 4 of Dreamweaver includes support for WebDAV in order to improve interactions between Dreamweaver and a content management system.

10.1.9 WebDrive

South River Technologies sells another drive-mounting client for Windows platforms. It supports FTP and FrontPage extensions as well as HTTP/DAV. WebDrive allows any file-based application to store and access files on a WebDAV repository.

10.1.10 XML Spy

XML Spy is an Integrated Development Environment (IDE) for applications based on XML. Like many modern IDE packages, XML Spy can store files directly on a shared code repository. WebDAV is one of the protocols supported for communication with the code repository.

10.1.11 DAV Explorer

DAV Explorer is a straightforward WebDAV browser, developed in Java at the University of California at Irvine (www.ics.uci.edu/~webdav/). It presents a tree view of a WebDAV repository and supports many advanced WebDAV features.

10.1.12 Davfs

Davfs is the WebDAV Linux File System (http://dav.sourceforge.net/). It allows the user to mount a WebDAV repository as a local disk drive. Davfs is part of the Mandrake Linux distribution (as of version 9.0).

10.1.13 Cadaver

Cadaver is a free Unix command-line tool written by Joe Orton. Cadaver acts much like a traditional FTP client by making a connection to a server and then accepting commands directly from the user. A cadaver example was part of the extended interactions covered in the last chapter.

10.1.14 DAVe

DAVe is another free Unix command-line tool. It is written in Perl, so it may be easily used on other platforms. It operates in much the same manner as cadaver or FTP: The user starts the tool and gets a special "dave" prompt. Then the user can type commands to download or upload files, lock, set properties, copy or move resources, or create collections.



WebDAV. Next Generation Collaborative Web Authoring
WebDAV. Next Generation Collaborative Web Authoring
ISBN: 130652083
EAN: N/A
Year: 2003
Pages: 146

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net