WebDAV (WWW Distributed Authoring and Versioning) es un conjunto de extensiones al protocolo HTTP que permite a los usuarios colaborar en la edición y gestión de recursos web en servidores remotos. Su objetivo es extender el protocolo HTTP para permitir una arquitectura abierta en el nivel del protocolo, para desarrollar nuevas herramientas de creación distribuida en la web, haciendo hincapié en la creación de páginas web en colaboración (ver RFC 2518). WebDAV define operaciones sobre las propiedades, las colecciones, los espacios de nombres y la potección de sobreescritura (mecanismo de bloqueo) y, para estas operaciones, define nuevos métodos, encabezados, organismos de entidad de petición y respuesta. Sin embargo, las características de tratamiento de versiones incluidas en la propuesta original se han trasladado al grupo de trabajo de la IEFT Delta-V, que pretende extender WebDAV y HTTP/1.1 en estas características (ver el artículo de E. J. Whitehead "El futuro del desarrollo de software distribuido en Internet").
El mecanismo de bloqueo definido en WebDAV ha sido diseñado para prevenir la sobreescritura de recursos (es decir, prevenir el problema de la actualización perdida), empleando las operaciones de bloqueo y desbloqueo. Un bloqueo controla el acceso de escritura a un recurso limitando las operaciones de escritura HTTP, como PUT, POST y DELETE. Esto significa que solamente alguien que conozca el bloqueo podrá ejectuar estas operaciones. El protocolo WebDAV también define dos ámbitos de bloqueo: bloqueo exclusivo y bloqueo compartido. Un bloqueo exclusivo garantiza que una persona posee el bloqueo y que nadie más podrá bloquear el recurso (esto no afecta a la lectura del recurso). Un bloqueo exclusivo permite a un grupo de usuarios crear sus bloqueos sobre un recurso, pero deben confiar unos en otros para prevenir problemas de acceso. Además, cada bloqueo tiene una duración límite y el usuario no puede olvidar que los bloqueos pueden desaparecer en el servidor debido a excepciones en el servidor.
Puedes encontrar más información sobre WebDAV en RFC 2518 y también en WebDAV.org.
Amaya tiene un soporte de WebDAV opcional y limitado. Este soporte incluye las operaciones siguientes: bloqueo/desbloqueo de un recurso compilante WebDAV, ver las propiedades WebDAV de un recurso y capacidades de descubrimiento de bloqueos. Además, este soporte incluye algunas funciones de reconocimiento, que pueden informar automáticamente al usuario sobre los recursos bloqueados.
El soporte de WebDAV presente en Amaya pretende ayudar a pequeños grupos
de usuarios a editar en colaboración sus páginas Web. Para mostrar cómo
funciona, he aquí un ejemplo; supón que tienes un servidor WebDAV (en
realidad, necesitas un servidor Web que soporte WebDAV para
trabajar con él) que se llama servidordav.miempresa.com
, y que
tú y tus compañeros queréis editar en colaboración algunos documentos que
están en la carpeta WebDAV /shared/
(las carpetas WebDAV se
denominan colecciones).
Entonces, imagina que necesitas modificar el documento
http://servidordav.miempresa.com/shared/Doc1.html
. Para ello,
abres el documento en tu editor Amaya y a continuación
bloqueas el documento (Bloquear recurso en el menú Cooperación ver Figura 1). Una vez
has bloqueado el documento, si uno de tus compañeros intenta guardar algún
cambio en el documento, será avisado de tu bloqueo y las actualizaciones no
se perderán automáticamente. Mientras el documento está bloqueado puedes
modificarlo, y cuando hayas terminado tu trabajo, al
desbloquear el documento, permitirás que otros compañeros
puedan bloquearlo y realizar sus modificaciones.
Por otro lado, si quieres saber si algún compañero ha bloqueado una página
Web, puedes utilizar la opción Ver propiedades del recurso en el menú Cooperación para ver todas las propiedades de la página
o puedes configurar Amaya para que te informe automáticamente cuando se
bloquee la página. para ello, tendrás que abrir la caja de diálogo
Cooperación>Preferencias, marcar la opción de Conocimiento
general y escribir la dirección de tu carpeta compartida en el campo
Lista de recursos WebDAV de usuario
(http://servidordav.miemmpresa.com/shared/
, como muestra la
Figura 2). Una vez lo hayas hecho, al abrir una página bloqueada por un
compañero de la carpeta
http://servidordev.miempresa.com/shared/
, Amaya te informará.
Estas opciones se encuentran en el menú Cooperación > Preferencias. Se indican los valores por omisión:
DAV_DEPTH= [ infinity | 0 ]
DAV_TIMEOUT= [ Infinite | Second-XXXX
]
DAV_LOCK_SCOPE= [ exclusive | shared
]
DAV_USER_URL= [ URL ]
DAV_AWARENESS= [ yes
|
no
]
DAV_AWARENESS_ONEXIT=[ yes
|
no
]
DAV_URLS= [ URL URL URL ... ]
WebDAV es una característica opcional en Amaya. Para compilarla y poderla utilizar, necesitarás:
Una vez has comprobado el cvs de Libwww con soporte WebDAV y has obtenido el código fuente de Amaya, debes seguir los pasos siguientes en un sistema Linux/Unix (para sistema Windows, consulta las páginas de Amaya y Libwww):
Escrito por Manuele Kirsch Pinheiro, 13 de junio de 2002.