]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.jcr/src/org/argeo/jcr/fs/JcrPath.java
Make scheme more consistent for conversion to URI
[lgpl/argeo-commons.git] / org.argeo.jcr / src / org / argeo / jcr / fs / JcrPath.java
index 8917f13a13c167211ec7127215c8edbe2be34c13..a2080c546a8eb48f178fc133168bc98dd939cc5c 100644 (file)
@@ -259,15 +259,18 @@ public class JcrPath implements Path {
                if (other.startsWith(this)) {
                        String p1 = toString();
                        String p2 = other.toString();
-                       return new JcrPath(fs, p2.substring(p1.length(), p2.length()));
+                       String relative = p2.substring(p1.length(), p2.length());
+                       if (relative.charAt(0) == '/')
+                               relative = relative.substring(1);
+                       return new JcrPath(fs, relative);
                }
-               throw new IllegalArgumentException(other + " cannot be realtivized against " + this);
+               throw new IllegalArgumentException(other + " cannot be relativized against " + this);
        }
 
        @Override
        public URI toUri() {
                try {
-                       return new URI("jcr", toString(), null);
+                       return new URI(fs.provider().getScheme(), toString(), null);
                } catch (URISyntaxException e) {
                        throw new JcrFsException("Cannot create URI for " + toString(), e);
                }