commit | 9acdaad1af6ecbd2849fdd885325b6dca5aca26f | [log] [tgz] |
---|---|---|
author | Julian Reschke <reschke@apache.org> | Wed Aug 28 16:24:58 2019 +0000 |
committer | Julian Reschke <reschke@apache.org> | Wed Aug 28 16:24:58 2019 +0000 |
tree | ed96761e5a8acb0c07ccc96f15fd5fc841e4735a | |
parent | 9e4430eab90c7fd90fd2a021559c63704e1f5eba [diff] |
OAK-8583: getNodeByIdentifier may fail with RuntimeException git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/oak/trunk@1866041 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java b/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java index ad629e1..b13a04f 100644 --- a/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java +++ b/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java
@@ -320,11 +320,15 @@ @NotNull @Override public Node perform() throws RepositoryException { - NodeDelegate nd = sd.getNodeByIdentifier(id); - if (nd == null) { - throw new ItemNotFoundException("Node with id " + id + " does not exist."); + try { + NodeDelegate nd = sd.getNodeByIdentifier(id); + if (nd == null) { + throw new ItemNotFoundException("Node with id " + id + " does not exist."); + } + return NodeImpl.createNode(nd, sessionContext); + } catch (IllegalArgumentException ex) { + throw new RepositoryException(ex); } - return NodeImpl.createNode(nd, sessionContext); } }); }
diff --git a/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RepositoryTest.java b/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RepositoryTest.java index 275b845..3cefe0c 100644 --- a/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RepositoryTest.java +++ b/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RepositoryTest.java
@@ -387,7 +387,6 @@ } } - @Ignore @Test public void getNodeByEmptyIdentifier() throws RepositoryException { try {