INO441, open a collection with Windows Web Folders

Here I have a new shiny Tamino-4.4.1. I can connect via the web browser to http://localhost/tamino/welcome_4_4_1/ino:dav/ino:dav/ and see

 /ino:dav/ino:dav name last modified size Tamino XDav Server 

but when I try to add http://localhost/tamino/welcome_4_4_1/ino:dav/ino:dav/ to the Windows Web Folders, Windows replies that it can not do so and suggests to open that URL in the default view. The question is, how do I add a Tamino collection to the Windows Web Folders and start putting there documents?

Hi Alexander. First you need to use Apache 2 as your web server if you are not already doing so. According to the Tamino 4.4 installation documentation, section “Prerequisites for Windows”, “Tamino WebDAV runs exclusively with an Apache 2 web server”. I think you also need to run Internet Explorer V5.5 or later, and after updating IE you may also need the Microsoft Web Folders update available here If this does not help, please raise a new Support request with your local Software AG Customer Support Centre. Best regards

Thanks a lot! this helped a little.

  • I removed Tamino, installed Apache as standalone app, reinstalled Tamino it did not work. I removed Tamino again, installed Apache as a service, reinstalled Tamino and it added an ino handler to the htaccess.conf file.

Now, indeed, I can open a Windows Web Folder at http://localhost:8080/tamino/welcome_4_4_1/ino:dav/ino:dav/ and put there arbitrary files. However, I could not see these files via X-Plorer. The documentation suggests that they should go into ino:dav collection but clicking on it shows a popup with “Unexpected Error” message (I attached the screenshot of the popup below). Nevertheless, once I managed to get access to Tamino through WebDAV, the next step is obviously to define a custom collection and to be able to put instances through WebDAV into this collection. The documentation page “Access from WebDAV to Tamino” suggests that I can change the default WebDAV collection for a folder with a PROPPATCH request. I decided to try this with a sample XML document in HR-XML format. I created a folder called Candidate through Windows Web Folders. I then created a collection Candidate in Tamino, set its XML Schema usage to optional so that XML Schema erros would not get in the way. Afterwards, I did that PROPPATCH request on the Candidate folder at /tamino/welcome_4_4_1/ino:dav/ino:dav/Candidate and put an instance of an HR-XML document to the Candidate folder through Windows Web Folders just to find out that it did not appear in the Candidate collection either. Did I do the right steps? Did I use the right namespace for the PROPPATCH? P.S. See below my PROPPATCH request executed with gawk

 sagbmik@pcsagbmik02 ~/Internal/hr-xml/conf $ cat in.xml <?xml version="1.0" encoding="UTF-8" ?> <propertyupdate xmlns="DAV:" xmlns:ino="" > <set> <prop> <ino:Candidate/> </prop> </set> </propertyupdate> sagbmik@pcsagbmik02 ~/Internal/hr-xml/conf $ cat setdav.awk BEGIN { Service = "/inet/tcp/0/localhost/8080" RS = ORS = "\r?\n\r?\n+" getline msg < "in.xml" RS = ORS = "\r\n" print "PROPPATCH /tamino/welcome_4_4_1/ino:dav/ino:dav/Candidate HTTP/1.1" |& Service print "Host:localhost" |& Service print "Content-Type: text/xml" |& Service print "Content-Length:" length(msg) |& Service print "" |& Service print msg |& Service while ((Service |& getline) > 0) print $0 close(Service) } sagbmik@pcsagbmik02 ~/Internal/hr-xml/conf $ gawk -f setdav.awk HTTP/1.1 207 Multi-Status Date: Wed, 12 Oct 2005 15:30:30 GMT Server: Apache/2.0.54 (Win32) X-INO-responseWrapper: none Cache-Control: no-cache MS-Author-Via: DAV DAV: 1, 2, access-control, version-control, version-history, checkout-in-place, workspace, working-resource, update, label X-INO-Version: Content-Length: 330 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8" ?><D:multistatus xmlns:D="DAV:"><D:response><D:href>/tamino/welcome_4_4_1/ino:dav/ino:dav/Candidate</D:href> <D:propstat><D:prop><ino:Candidate xmlns:ino=""/></D:prop><D:status>HTTP/1.1 200 OK</D:status></ D:propstat></D:response></D:multistatus> sagbmik@pcsagbmik02 ~/Internal/hr-xml/conf $ 

a subsequent PROPFIND on the Candidate folder gives the following:

 <?xml version="1.0" encoding="UTF-8" ?> <D:multistatus xmlns:D="DAV:"> <D:response> <D:href>/tamino/welcome_4_4_1/ino:dav/ino:dav</D:href> <D:propstat> <D:prop> <D:creationdate>2005-09-09T13:12:38Z</D:creationdate> <D:getlastmodified>Wed, 12 Oct 2005 15:20:48 GMT</D:getlastmodified> <D:modificationdate>2005-10-12T15:20:48Z</D:modificationdate> <D:resourcetype> <D:collection/> </D:resourcetype> <D:getcontentlength>0</D:getcontentlength> <D:getcontenttype>httpd/unix-directory</D:getcontenttype> <D:displayname> </D:displayname> <D:getetag>"00000000000000000"</D:getetag> <D:source> </D:source> <D:owner> <D:unauthenticated/> </D:owner> <ino:collectionproperties xmlns:ino=""> <D:auto-version> <D:checkout-checkin/> </D:auto-version> <D:checkin-fork> <D:forbidden/> </D:checkin-fork> <D:checkout-fork> <D:forbidden/> </D:checkout-fork> </ino:collectionproperties> <dp1:Candidate xmlns:dp1=""/> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> </D:multistatus> 
  • Great! With regard to the new problems and questions I think it’s time to raise a new Support Request. Thanks.

Ok, indeed, I think I need a hands-on session with a support engineer. Thanks for the help, anyway.

Hello Alexander, the PROPPATCH, so as to map a WebDAV folder to a Tamino collection, needs to use the property named “collection” in the namespace “”. For example the following request would map the folder “test” to the Tamino collection “TEST”:

PROPPATCH /tamino/dbname/ino:dav/ino:dav/test/ HTTP/1.1 Host: localhost:80 Content-length: xxx Authorization: Basic xxx <?xml version="1.0" encoding="utf-8" ?> <D:propertyupdate xmlns:D="DAV:"> <D:set> <D:prop> <ino:collection xmlns:ino="">TEST</ino:collection> </D:prop> </D:set> </D:propertyupdate>

regards, Heiko

Gotcha! The documentation says A WebDAV directory’s default storage location can be changed using a PROPPATCH with the property :. Which I unserstood as if the property should be

<ino:Candidate xmlns:ino=""/>

while it had to be

<ino:collection xmlns:ino="">Candidate</ino:collection>

Not that obvious, though.