[ http://issues.apache.org/jira/browse/JCR-467?page=all ]
     
Jukka Zitting resolved JCR-467:
-------------------------------

    Resolution: Fixed

Fixed as suggested in revision 418446. Thanks a lot for the excellent bug 
report with an accurate fix!

> CompactNodeTypeReader fails to explain why valid JCR names cause errors
> -----------------------------------------------------------------------
>
>          Key: JCR-467
>          URL: http://issues.apache.org/jira/browse/JCR-467
>      Project: Jackrabbit
>         Type: Improvement

>     Versions: 1.0, 1.0.1
>     Reporter: Brian Ewins
>     Assignee: Jukka Zitting
>     Priority: Minor
>      Fix For: 1.1

>
> for example, you cannot use underscores in node type definitions:
> [my:example_breaks2]
> In fact only A-Z, a-z, 0-9, : are allowed, unless you quote the name. The 
> error message you see when you make this mistake doesn't give any hint:
> Missing ']' delimiter for end of node type name (nodetypes.cnd, line 8)
> and the documentation on the website and the javadoc for 
> CompactNodeTypeDefReader both just say:
>  * unquoted_string ::= ...a string...
> ... not helpful. If you made this mistake, you end up needing to look at the 
> source to figure out what you've done wrong. 
> A few suggested solutions:
> - change the documentation to say unquoted string is '[A-Za-z0-9:]+'
> - change the error message to mention the token causing the problem, eg:
> if (!currentTokenEquals(Lexer.END_NODE_TYPE_NAME)) {
>             lexer.fail("Missing '" + Lexer.END_NODE_TYPE_NAME + "' delimiter 
> for end of node type name, found " + currentToken);
> }
> - add "st.wordChars('_','_');" to the lexer, its probably going to be the 
> most common cause, and doesnt conflict with other rules.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to