jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marcel Reutegger (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-2315) Handling of an unspecified item definition template name
Date Tue, 22 Sep 2009 12:32:16 GMT

    [ https://issues.apache.org/jira/browse/JCR-2315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12758227#action_12758227
] 

Marcel Reutegger commented on JCR-2315:
---------------------------------------

I like 2) better as well.

> Handling of an unspecified item definition template name
> --------------------------------------------------------
>
>                 Key: JCR-2315
>                 URL: https://issues.apache.org/jira/browse/JCR-2315
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi-commons, nodetype
>            Reporter: Jukka Zitting
>            Priority: Minor
>
> The code below currently leads to a NPE in registerNodeType() due to the missing name
of the wildcard node definition. Uncommenting the setName() call fixes the issue.
>     NodeTypeManager manager = ...;
>     NodeTypeTemplate type = manager.createNodeTypeTemplate();
>     NodeDefinitionTemplate wildcard = manager.createNodeDefinitionTemplate();
>     // wildcard.setName("*");
>     type.getNodeDefinitionTemplates().add(wildcard);
>     manager.registerNodeType(type, false);
> Whatever we do, the code should not throw a NullPointerException. There are basically
two valid approaches:
> 1) Throw an exception in registerNodeType() if the name of an item definition has not
been specified.
> 2) Treat item definitions with unspecified names as residual.
> Note that a ItemDefinition.getName() is explicitly specified to return null (instead
of "*") when the name has not been set, which seems to suggest that option 1 above is the
correct behaviour. On the other hand, the respective setName() call is specified to accept
only a "syntactically valid JCR name", which would suggest option 2 as the correct alternative.
> Personally I tend to like option 2 better, as that's also how I intuitively was using
the API when I ran into the NPE error. That approach was also what Jackrabbit used to do before
the node type handling was recently merged with the SPI code.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message