Andreas,

I'm not an active developer on the Slide server side stuff, but I can take a guess at what is going on for you.

I believe that by implication, the specification resource names are URIs and are therefore "case sensitive", depending on the scheme. In the case of HTTP, the scheme and server name are not case sensitive, and the port is implied, so all of the following are the same "resource":
http://www.GOOGLE.com:80/mysearch?...
HTTP://WWW.google.com/mysearch?...
http://www.google.com/mysearch?...

But this is not:
http://www.google.com/MySearch?...

As an aside, with property names, however, they correspond to names as defined in the XML Namespaces specification, and therefore the namespaces used in qualifying property names are completely case sensitive - even if they "look" like an "HTTP" URL. For example, the following two namespace names are NOT equivalent according to the namespace specification:
http://www.GOOGLE.com/namespaces
http://www.google.com/namespaces

The final gotcha here. Based on your use of the word "transaction", I'm assuming you've got a database back-end. A number of databases install in a "case-insensitive" manner. As a result, certain "key" values may compare to be the same when they should be different, perhaps to the problems that you see. I haven't looked at the slide code to see if this is a problem, but we avoided the issue in an application I've worked on by not requiring "unique" on columns containing namespace names, and then looking in ResultSet in Java code for the precise match. And for resources, a similar approach is needed, wherein the "matching" of a resource name must always be done by the database, rather than in Java code, in case the database is installed in a case-insensitive manner. Perhaps Slide needs this kind of check?

Hope that helps.

-Eric Johnson.

Andreas Probst wrote:

Hi Sliders,

are resource names in WebDAV case-sensitive? I didn't find an answer to this in the spec.

The client implementation WebdavResources.isThereResourceName(...) is case-sensitiv, i.e. returns false, if the case is changed.

When I set the path of a WebdavResource to the case-changed name, I get a transaction rollback in Slide and an org.apache.commons.httpclient.HttpException in my client. If I set the path to the old case-unchanged name, it works fine.

So it seems Slide doesn't like to have two resources with different cases but otherwise same names.

Is this a bug in Slide server or Slide client API or are there reasons for this?

Thanks in advance.

Andreas


--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to