As I promised two days ago I have been working on a patch for PUT and POST to
work reliably in the Library. I am now done and present the patches in two
ways:
1) New distribution files have been generated for people who do not have easy
access to patch programs. They are available from
http://www.w3.org/pub/WWW/Distribution.html
or from the distribution area
ftp://ftp.w3.org/pub
Please make sure that you get the Library _and_ all the example utilities:
Reference Library
Line Mode Browser
Mini Robot
Command Line Tool
and please remember to rebuild all applications.
2) If you are only interested in the patches then you can get them from
http://www.w3.org/pub/WWW/Library/User/Patch/
The patch is rather big but it contains some fixes and modifications that
enables PUT and POST to work reliably. If you download the 4.0C version of the
distribution then the patch has already been applied. It is basically the
difference between versions 4.0B and 4.0C which is now the current version.
There are updated def files for Windows platforms. However, I don't have any
news on the problems that have been reported on the mailing list. Please mail
any progress to the list!
PUT and POST operations are handled through the POSTWeb interface which you
can find described at
http://www.w3.org/pub/WWW/Library/User/Architecture/PostWeb.html
You can find examples of how to use this interface in both the Line Mode
Browser and in the Command Line Tool.
The Library is now capable of handling redirection and authentication on the
destination side but _not_ on the source side of a PUT or POST. This is not a
limitation to the POSTWeb design but to the current implementation in the
Library.
The main set of differences are:
* Automatic redirection and Access authentication has been taken out of the
HTTP module. Instead the new mechanism with request callback functions are
used so that the application can register handlers to handle these situations.
The reason for this change is that not all applications are interested in
having this functionality performed automatically.
* Authentication handler and redirection handler added to both the Line Mode
Browser and the Command Line Tool
* Added three possible return codes on which a request callback function can
be called:
HT_PERM_REDIRECT for permanently moved objects
HT_TEMP_REDIRECT for temporaryly moved objects
HT_NO_ACCESS for insufficient credentials
* PUT and POST do now work reliably in the Line Mode Browser and the Command
Line Tool. Both can PUT or POST a document from either a remote HTTP server or
the local file system to a remote HTTP server and they can handle
autehntication and redirection on the destination for the operation.
* An important bug-fix in the internal event manager that prevented a socket
to be registered for multiple events at the same time.
* Cleanup of the POSTWeb management in the file module and the HTTP module
* In addition to progress notification on READ we now support progress
notification when sending a data object
* Spelling mistake fixed. preemtive is changed to preemptive. This has a
certain impact as the wrong spelling was part of a set of methods on the
Request object
* The W3C Mini Robot has now the ability to stop at a certain depth while
traversing the Web.
Have fun!
--
Henrik Frystyk Nielsen, <frystyk@w3.org>
World-Wide Web Consortium, MIT/LCS NE43-356
545 Technology Square, Cambridge MA 02139, USA