[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12515276 ] Ed Burnette commented on JCR-388: - Thanks! add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: JCR-388_2007_07_19.patch, patch_16JUL07.txt, patch_16JUL07.zip, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513897 ] angela commented on JCR-388: i will attach my patch, where i (hopefully) integrated all comments (see jira). during some quick testing in found a couple of additional things: - compliance class: version-history was missing as well - DAV:predecessor-set missing with checked-out vc-resource - in response to the discussion with julian i disabled the version-control feature for collections. - versions are always non-collection resources - versions never expose any member resources - isCollection() always returns false - the locator for versions has to be build accordingly - collections may never put under DAV version control. - VersionResources are read-only - override addMember, removeMember and all methods related to PROPPATCH. - VersionHistoryResource are read-only except for remove of versions (i'm not sure, whether this is allowed with deltaV. it is optional in JCR). - there were some more comments that were copied from jcr-server without making sense in the new context. - VersionHandler: i change the behaviour in order not to export all jcr properties present with the content-node such as the DefaultHandler does. add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_16JUL07.zip, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513950 ] Ed Burnette commented on JCR-388: - I did a smoke test on it and it seems to work for me. add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: JCR-388_2007_07_19.patch, patch_16JUL07.txt, patch_16JUL07.zip, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
Re: [jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
Angela Schreiber wrote: but that's a different story isn't it? i was talking about the compliance class (and the method set). Probably. I just wanted to make sure that no time is spent on something that is broken in the spec... RFC 3253 defines a separate behaviour for version-controlled collections. I'm not completely sure what the issue is? A version controlled collection is a specific type of a regular version controlled resource, it just also records information about version controlled children... what i meant: http://www.webdav.org/deltav/protocol/rfc3253.html#version-controlled-collection.feature states the following: As with any versionable resource, when a collection is put under version control, a version history resource is created to contain versions for that version-controlled collection. In order to preserve standard versioning semantics (a version of a collection should not be modifiable), a collection version only records information about the version-controlled bindings of that collection. In order to cleanly separate a modification to the namespace from a modification to content or dead properties, a version of a collection has no members, but instead records in its DAV:version-controlled-binding-set property the binding name and version history resource of each version-controlled internal member of that collection. [...] A version-controlled collection has all the properties of a collection and of a version-controlled resource. In addition, the version-controlled-collection feature introduces the following REQUIRED property for a version-controlled collection. 14.1.1 DAV:eclipsed-set (computed) [...] Clarifying: the difference between a collection and a non-collection with respect to WebDAV versioning is that the version-controlled state of a collection *additionally* includes the binding-set (for the members), but not the members itself. however: the patch provided by jeremi and modified by rob does not distinguish between collections and non-collection resources. in both cases the underlying repository Node is made 'versionable'. consequently both collections and non-collections behave the same way (i.e. like version-controlled resources), which is from my understanding not what the RFC defines. see quote above. do i miss something? Hm, probably I'm partly confused because I've grown up with RFC3253 semantics, and haven't used collection versioning in JCR so far (the system I currently work on only can version leaf files + properties). It seems the counterpart of a version controlled collection in WebDAV would be a JCR node where all children have OnParentVersionAction=IGNORE, meaning they are always version-controlled independently of the parent. I'm not sure whether anything else can be exposed in a RCF3253 compliant way. We may have to ask Geoff for advice :-). Best regards, Julian
Re: [jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
hi Clarifying: the difference between a collection and a non-collection with respect to WebDAV versioning is that the version-controlled state of a collection *additionally* includes the binding-set (for the members), but not the members itself. jup... and that's currently missing. Hm, probably I'm partly confused because I've grown up with RFC3253 semantics, and haven't used collection versioning in JCR so far (the system I currently work on only can version leaf files + properties). It seems the counterpart of a version controlled collection in WebDAV would be a JCR node where all children have OnParentVersionAction=IGNORE, meaning they are always version-controlled independently of the parent. I'm not sure whether anything else can be exposed in a RCF3253 compliant way. here we go. the simple-server currently leaves it to the configuration to decide which nodes are collections and which are not. potentially any of them can be made versionable in jcr (and currently in dav as well). i don't see a smart solution up to know. a simple one would probably be to ignore the versioning stuff for the collections at all only allow non-collections to be version-controlled resources. disregarding whether the underlying node is mix:versionable or not. leading to the question: will it cause problems if the dav-client can 'see' dav VersionHistoryResources and VersionResources that don't have a corresponding versionable dav resource? or would that be an negligible inconsistency? angela
Re: [jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
Angela Schreiber wrote: ... leading to the question: will it cause problems if the dav-client can 'see' dav VersionHistoryResources and VersionResources that don't have a corresponding versionable dav resource? or would that be an negligible inconsistency? ... That shouldn't be a problem, because it could also be cause of the VCR being removed, while versioning information was preserved. Best regards, Julian
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513179 ] angela commented on JCR-388: thanks for the contrib. i will take a look at it as soon as possible. kind regards angela add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513183 ] angela commented on JCR-388: rob, how did you create the patch? i don't manage to apply it using tortoiseSVN... add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513222 ] Ed Burnette commented on JCR-388: - (Rob and I work together) I believe he created it with Eclipse Team Create Patch, in unified diff format. I was able to apply it with Eclipse by telling it to ignore one or two of the initial path components. If you need it in some other format let us know. add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513233 ] angela commented on JCR-388: hm... i don't use eclipse... can you simply create it from svn? thanks angela add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513234 ] Bertrand Delacretaz commented on JCR-388: - The patch has some extra path components that must be ignored, this works for me: cd jackrabbit-jcr-server curl -s https://issues.apache.org/jira/secure/attachment/12361904/patch_16JUL07.txt | patch -p4 There's probably an option in tortoiseSVN to ignore a given number of path components add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513241 ] angela commented on JCR-388: ? bertrand? what do you want to state here i already stated in the issue in which format i expect the patch. that should be sufficient. add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513245 ] Bertrand Delacretaz commented on JCR-388: - I'm just saying that the patch is indeed in SVN format, the only slight problem is that the pathnames are not relative to the jackrabbit root, for example: --- C:/jprojects/eclipse/version_patch/src/main/java/org/apache/jackrabbit/server/io/DefaultIOManager.java (revision 556115) +++ C:/jprojects/eclipse/version_patch/src/main/java/org/apache/jackrabbit/server/io/DefaultIOManager.java (working copy) which should ideally be jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultIOManager.java This happens frequently depending on people's environments, and SVN clients (I assume tortoise does this as well) have an option to ignore a certain number of path elements when appliying patches. So in my example, patch -p4 means ignore C:/jprojects/eclipse/version_patch from the pathnames in the patch. But apart from that the patch is IMHO fine. add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_16JUL07.zip, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513248 ] angela commented on JCR-388: rob, thanks for the new patch. i commit the changes or provide feedback in case of a problem latest by end of this week. kind regards angela add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_16JUL07.txt, patch_16JUL07.zip, patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12500040 ] angela commented on JCR-388: i reviewed the second patch jeremi uploaded and had a couple of comments. as far as i know there is no additional patch available that would address those issues. regards angela add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12500164 ] jeremi Joslin commented on JCR-388: --- no sorry i haven't updated the patch. add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ https://issues.apache.org/jira/browse/JCR-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12499948 ] Ed Burnette commented on JCR-388: - What's the status of this patch? add support for RFC 3253 to the simple server - Key: JCR-388 URL: https://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Issue Type: New Feature Components: webdav Affects Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: patch_rfc3253.zip, Review.txt, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ http://issues.apache.org/jira/browse/JCR-388?page=comments#action_12416742 ] angela commented on JCR-388: regarding your questions: a) the factory should take care of building the proper resource instances. thus: version, versionhistory specific object if the request points to such a resource. b) instead of 'addHrefProperty' i would create a method that simply builds such an HrefProperty. adding it to the property-set would be left to the caller. c) you have an error in the code while building the href. you only copied the code from the jcr-server without understanding that the simple server works differently. in jcr-server a jcr-node represents a webdav collection, which does not apply to the simple server. d) the factory is an interface that returns 'DavResource' upon a call to the create methods. since its an interface one could replace it by a different implementation. hope that helps. add support for RFC 3253 to the simple server - Key: JCR-388 URL: http://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Type: New Feature Components: webdav Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: Review.txt, patch_rfc3253.zip, rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
Re: [jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
hi jérémi since i would like to take advantage of your patch to think about a better structure and how we can package things ('simple' is probably not an appropiate package name), i would suggest that to have this solved before we commit the extensions. hope that's fine. Sure. what kind of changes you want to do? i'd like to - sort out the webdav part from the 'jcr-server' (see discussion regarding package naming before the 1.0 release). - separate 'simple' and 'jcr' packages (which are currently together in the server) and find a solution for those classes inside the jcr-package that in fact are common classes for both implementations. - find a solution for the suggestion mikhail posted yesterday. basically those 3 issues belong together. finally i would like to build a basis for further development of the 'simple' server, which is not simple any more. i think it would be wise to do this, before we add further extensions to the 'simple' package. your patch was a perfect start for this :)) so i'm currently working on an initial proposal in order to have a discussion basis. I was not here at the beginning of the week, but i will finish the IOhandler for the version maybe tomorrow. no need to hurry. i still owe you a review anyway :). regards angela
[jira] Commented: (JCR-388) add support for RFC 3253 to the simple server
[ http://issues.apache.org/jira/browse/JCR-388?page=comments#action_12374168 ] angela commented on JCR-388: while reviewing the patch i looked for reason the missing size in the version-report as well. i'd say this caused by again the missing handler for versions: the DirListingExportHandler is lazy and does not calculate the resulting size. regarding the review: i' ll try to write down the findings (mostly minor improvements and things i think are not solved gracefully in the original code of the 'jcr-server') and will upload my suggestions in a separate patch as soon as i'm done and performed some minimal tests. since i would like to take advantage of your patch to think about a better structure and how we can package things ('simple' is probably not an appropiate package name), i would suggest that to have this solved before we commit the extensions. hope that's fine. add support for RFC 3253 to the simple server - Key: JCR-388 URL: http://issues.apache.org/jira/browse/JCR-388 Project: Jackrabbit Type: New Feature Components: webdav Versions: 0.9 Reporter: jeremi Joslin Assignee: angela Priority: Minor Attachments: rfc.zip http://www.ietf.org/rfc/rfc3253.txt -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira