A very basic problem has just come up (Jackrabbit 2.2.5). It seems that
session.itemExists() returns true for a newly created Node only after
node.getPath() has been called.?!
Here is the code:
Session session = prompt.getSession();
String path = "/test";
if (session.itemExists(path)) {
System.out.println("removing item at " + path);
session.removeItem(path);
}
Node node = session.getRootNode().addNode("test");
System.out.println(session.itemExists(path));
node.getPath();
System.out.println(session.itemExists(path));
And the output is
removing item at /test
false
true
Does that make any sense at all? I know that I can get it to work by calling
session.save() after the addNode() line, but since its all the same session, it
seems like a bug. Yet a bug too fundamental to really be one... :O
The code runs with Spring Testing Framework, in-VM Repository, Session created
via Springmodules Bean
Thanks
Tom
Behalten Sie die Zukunft von Marketing und IT im Blick. Abonnieren Sie unseren
Newsletter unter http://newsletter.byteconsult.de