You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by stephan lohwasser <st...@systemone.at> on 2006/06/27 18:46:58 UTC

NodeTypeRegistry.registerNodetypes(Collection); circular dependencies in reference constraints

hi all,
i have a problem concerning the registration of a set of nodetypes with 
circular references in value constraints of reference properties.

this is an excerpt of the cnd of the nodetypes to be registered:
__________________________________________________________________________
<s1Aspect = 'http://www.systemone.at/jcr/aspect'>
<s1 = 'http://www.systemone.at/jcr'>

[s1Aspect:person]
        orderable
        - s1:organisation (reference)
                multiple copy
                < 's1Aspect:organisation'

[s1Aspect:organisation]
        orderable
        - s1:contact (reference)
                multiple copy
                < 's1Aspect:person'
__________________________________________________________________

as you can see the person references to nodes of type organisation and 
organisation references to person.
when trying to register an InvalidNodeTypeDefException is thrown at the 
person nodetype, stating that the nodetype organisation was not found.

is there a way to get these nodetypes running?
do i totally missunderstand the concept of value constarints? (is there 
a way to specify which of which type a reference may be? and is this the 
way to to it?)

thanks a lot.
stephan



Re: NodeTypeRegistry.registerNodetypes(Collection); circular dependencies in reference constraints

Posted by Stefan Guggisberg <st...@gmail.com>.
hi stephan,


On 6/27/06, stephan lohwasser <st...@systemone.at> wrote:
> hi all,
> i have a problem concerning the registration of a set of nodetypes with
> circular references in value constraints of reference properties.
>
> this is an excerpt of the cnd of the nodetypes to be registered:
> __________________________________________________________________________
> <s1Aspect = 'http://www.systemone.at/jcr/aspect'>
> <s1 = 'http://www.systemone.at/jcr'>
>
> [s1Aspect:person]
>         orderable
>         - s1:organisation (reference)
>                 multiple copy
>                 < 's1Aspect:organisation'
>
> [s1Aspect:organisation]
>         orderable
>         - s1:contact (reference)
>                 multiple copy
>                 < 's1Aspect:person'
> __________________________________________________________________
>
> as you can see the person references to nodes of type organisation and
> organisation references to person.
> when trying to register an InvalidNodeTypeDefException is thrown at the
> person nodetype, stating that the nodetype organisation was not found.

circular node type references shouldn't be problem. i tried to reproduce
your issue but everything worked as expected, i.e. i was able to register
both node types.

could you please provide a small test case or a code fragment that
demonstrates your issue?

cheers
stefan


>
> is there a way to get these nodetypes running?
> do i totally missunderstand the concept of value constarints? (is there
> a way to specify which of which type a reference may be? and is this the
> way to to it?)
>
> thanks a lot.
> stephan
>
>
>