Hi,

I've been trying out the UserManager class and noticed that createUser throws an exception (javax.jcr.query.InvalidQueryException) if the user name contains a '@' character.

The full stack trace is listed below. Is this the expected behavior or should I file a bug?

Thanks,
Scott



Exception in thread "main" javax.jcr.query.InvalidQueryException: Lexical error at line 1, column 76. Encountered: "@" (64), after : "" for statement: for $v in /jcr:root/rep:security/rep:authorizables/ rep:groups//element([EMAIL PROTECTED],rep:Group) return $v: Lexical error at line 1, column 76. Encountered: "@" (64), after : "": Lexical error at line 1, column 76. Encountered: "@" (64), after : "" at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.<init> (XPathQueryBuilder.java:302) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.createQu ery(XPathQueryBuilder.java:331) at org.apache.jackrabbit.spi.commons.query.xpath.QueryBuilder.createQueryTr ee(QueryBuilder.java:39) at org.apache.jackrabbit.spi.commons.query.QueryParser.parse (QueryParser.java:57) at org.apache.jackrabbit.core.query.lucene.QueryImpl.<init> (QueryImpl.java:91) at org.apache.jackrabbit.core.query.lucene.SearchIndex.createExecutableQuer y(SearchIndex.java:615) at org.apache.jackrabbit.core.query.QueryImpl.init (QueryImpl.java:128) at org.apache.jackrabbit.core.SearchManager.createQuery (SearchManager.java:282) at org.apache.jackrabbit.core.query.QueryManagerImpl.createQuery (QueryManagerImpl.java:102) at org.apache.jackrabbit.core.security.user.IndexNodeResolver.buildQuery (IndexNodeResolver.java:105) at org.apache.jackrabbit.core.security.user.IndexNodeResolver.findNode (IndexNodeResolver.java:50) at org.apache.jackrabbit.core.security.user.UserManagerImpl.getAuthorizable (UserManagerImpl.java:93) at org.apache.jackrabbit.core.security.user.UserManagerImpl.createUser (UserManagerImpl.java:177) at org.apache.jackrabbit.core.security.user.UserManagerImpl.createUser (UserManagerImpl.java:158)
        at FirstHop.main(FirstHop.java:20)
Caused by: org.apache.jackrabbit.spi.commons.query.xpath.TokenMgrError: Lexical error at line 1, column 76. Encountered: "@" (64), after : "" at org.apache.jackrabbit.spi.commons.query.xpath.XPathTokenManager.getNextT oken(XPathTokenManager.java:13263) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.jj_ntk (XPath.java:9187) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ElementTest (XPath.java:8745) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.KindTest (XPath.java:8120) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.NodeTest (XPath.java:5041) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AbbrevForwardStep (XPath.java:4891) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ForwardStep (XPath.java:4747) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AxisStep (XPath.java:4692) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.StepExpr (XPath.java:4597) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.RelativePathExpr (XPath.java:4547) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.PathExpr (XPath.java:4396) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ValueExpr (XPath.java:4125) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.UnaryExpr (XPath.java:4032) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.CastExpr (XPath.java:3935) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.CastableExpr (XPath.java:3898) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.TreatExpr (XPath.java:3861) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.InstanceofExpr (XPath.java:3824) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.IntersectExceptExpr( XPath.java:3748) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.UnionExpr (XPath.java:3672) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.MultiplicativeExpr (XPath.java:3586) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AdditiveExpr (XPath.java:3510) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.RangeExpr (XPath.java:3451) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ComparisonExpr (XPath.java:3353) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AndExpr (XPath.java:3290) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.OrExpr (XPath.java:3227) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ExprSingle (XPath.java:2214) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ForClause (XPath.java:2337) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.FLWORExpr (XPath.java:2233) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ExprSingle (XPath.java:2133) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.Expr (XPath.java:2094) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.QueryBody (XPath.java:2066) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.MainModule (XPath.java:512) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.Module (XPath.java:387) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.QueryList (XPath.java:151) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.XPath2 (XPath.java:118) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.<init> (XPathQueryBuilder.java:295)
        ... 14 more
org.apache.jackrabbit.spi.commons.query.xpath.TokenMgrError: Lexical error at line 1, column 76. Encountered: "@" (64), after : "" at org.apache.jackrabbit.spi.commons.query.xpath.XPathTokenManager.getNextT oken(XPathTokenManager.java:13263) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.jj_ntk (XPath.java:9187) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ElementTest (XPath.java:8745) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.KindTest (XPath.java:8120) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.NodeTest (XPath.java:5041) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AbbrevForwardStep (XPath.java:4891) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ForwardStep (XPath.java:4747) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AxisStep (XPath.java:4692) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.StepExpr (XPath.java:4597) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.RelativePathExpr (XPath.java:4547) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.PathExpr (XPath.java:4396) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ValueExpr (XPath.java:4125) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.UnaryExpr (XPath.java:4032) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.CastExpr (XPath.java:3935) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.CastableExpr (XPath.java:3898) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.TreatExpr (XPath.java:3861) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.InstanceofExpr (XPath.java:3824) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.IntersectExceptExpr( XPath.java:3748) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.UnionExpr (XPath.java:3672) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.MultiplicativeExpr (XPath.java:3586) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AdditiveExpr (XPath.java:3510) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.RangeExpr (XPath.java:3451) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ComparisonExpr (XPath.java:3353) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.AndExpr (XPath.java:3290) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.OrExpr (XPath.java:3227) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ExprSingle (XPath.java:2214) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ForClause (XPath.java:2337) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.FLWORExpr (XPath.java:2233) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.ExprSingle (XPath.java:2133) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.Expr (XPath.java:2094) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.QueryBody (XPath.java:2066) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.MainModule (XPath.java:512) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.Module (XPath.java:387) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.QueryList (XPath.java:151) at org.apache.jackrabbit.spi.commons.query.xpath.XPath.XPath2 (XPath.java:118) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.<init> (XPathQueryBuilder.java:295) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.createQu ery(XPathQueryBuilder.java:331) at org.apache.jackrabbit.spi.commons.query.xpath.QueryBuilder.createQueryTr ee(QueryBuilder.java:39) at org.apache.jackrabbit.spi.commons.query.QueryParser.parse (QueryParser.java:57) at org.apache.jackrabbit.core.query.lucene.QueryImpl.<init> (QueryImpl.java:91) at org.apache.jackrabbit.core.query.lucene.SearchIndex.createExecutableQuer y(SearchIndex.java:615) at org.apache.jackrabbit.core.query.QueryImpl.init (QueryImpl.java:128) at org.apache.jackrabbit.core.SearchManager.createQuery (SearchManager.java:282) at org.apache.jackrabbit.core.query.QueryManagerImpl.createQuery (QueryManagerImpl.java:102) at org.apache.jackrabbit.core.security.user.IndexNodeResolver.buildQuery (IndexNodeResolver.java:105) at org.apache.jackrabbit.core.security.user.IndexNodeResolver.findNode (IndexNodeResolver.java:50) at org.apache.jackrabbit.core.security.user.UserManagerImpl.getAuthorizable (UserManagerImpl.java:93) at org.apache.jackrabbit.core.security.user.UserManagerImpl.createUser (UserManagerImpl.java:177) at org.apache.jackrabbit.core.security.user.UserManagerImpl.createUser (UserManagerImpl.java:158)
        at FirstHop.main(FirstHop.java:20)

Reply via email to