Hi,
I've been working with Jackrabbit for some time now (with storage on the file
system), but I don't know what's wrong in the following case.
I have the following situation (CND):
[td:place] > nt:base,mix:versionable,td:sourceable
-td:refId (string)
....
[td:sourceable] > mix:versionable
mixin
-td:source (reference)
[td:source] > nt:base,mix:versionable
-td:refId (string)
....
Here's the code fragment that adds nodes of type td:source to td:place (n):
...
for (Source source : dto.getSources())
{
Node sourceNode =
getSession().getNodeByUUID(source.getId());
n.setProperty("td:source", sourceNode);
}
...
The place-node gets added without exception. However, if I want to retrieve it,
it does not appear. It also does not show up in tools such as JcrConverter. And
if I try to delete node n, the following exception appears:
class javax.jcr.nodetype.ConstraintViolationException
no matching property definition found for {http://mydomain.com/ns/td}source
That's all. As mentioned, I have no clue what goes wrong here, perhaps, and
would highly appreciate any hint.
Thanks,
Juerg
Cambridge Technology Partners, Zurich