Expand my Community achievements bar.

Guidelines for the Responsible Use of Generative AI in the Experience Cloud Community.
SOLVED

Cannot subscribe CQ calendar to external calendar (google calendar)

Avatar

Level 2

I'm following the documentation to subscribe to an external calendar which is google calendar in my case:

https://dev.day.com/docs/en/cq/current/administering/social_communities/calendar_and_events.html?cq_... to an External Calendar

But I' getting error 

17.09.2013 17:17:39.062 *INFO* [pool-5-thread-5] com.day.cq.collab.calendar.impl.ICalImporter importing icalendar into /content/TEST/302167/calendar/jcr:content/main_frame/calendar/calendars/default 17.09.2013 17:17:39.064 *WARN* [pool-5-thread-5] com.day.cq.polling.importer.impl.PollingImporterImpl importData: Failed to import PollConfig(/etc/importers/polling/12_1379413527222): scheme=ics,source=https://www.google.com/calendar/ical/hartmannricocz%40gmail.com/private-eb8bf541faa33dcffaecf855dace7837/basic.ics,target=/content/TEST/302167/calendar/jcr:content/main_frame/calendar/calendars/default,interval=1800s,enabled=true org.apache.sling.api.resource.QuerySyntaxException: Parse error: data is not a RelationQueryNode at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.findResources(JcrResourceProvider.java:253) at org.apache.sling.resourceresolver.impl.tree.RootResourceProviderEntry$2.seek(RootResourceProviderEntry.java:144) at org.apache.sling.resourceresolver.impl.tree.RootResourceProviderEntry$2.<init>(RootResourceProviderEntry.java:134) at org.apache.sling.resourceresolver.impl.tree.RootResourceProviderEntry.findResources(RootResourceProviderEntry.java:132) at org.apache.sling.resourceresolver.impl.ResourceResolverImpl.findResources(ResourceResolverImpl.java:644) at com.day.cq.collab.calendar.impl.CqCalendarImpl.findEvent(CqCalendarImpl.java:130) at com.day.cq.collab.calendar.impl.ICalImporter.storeEvent(ICalImporter.java:143) at com.day.cq.collab.calendar.impl.ICalImporter.importStream(ICalImporter.java:79) at com.day.cq.collab.calendar.impl.CqCalendarImpl.importICS(CqCalendarImpl.java:102) at com.day.cq.collab.calendar.impl.importer.ICalHttpImporter.importData(ICalHttpImporter.java:59) at com.day.cq.polling.importer.HttpImporter.importData(HttpImporter.java:133) at com.day.cq.polling.importer.impl.PollingImporterImpl.importData(PollingImporterImpl.java:341) at com.day.cq.polling.importer.impl.PollingImporterImpl.access$000(PollingImporterImpl.java:52) at com.day.cq.polling.importer.impl.PollingImporterImpl$1.run(PollingImporterImpl.java:262) at org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:56) at org.quartz.core.JobRunShell.run(JobRunShell.java:213) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) Caused by: javax.jcr.query.InvalidQueryException: Parse error: data is not a RelationQueryNode at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:517) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:575) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.childrenAccept(SimpleNode.java:90) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.createPathQueryNode(XPathQueryBuilder.java:778) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.visit(XPathQueryBuilder.java:377) at org.apache.jackrabbit.spi.commons.query.xpath.SimpleNode.jjtAccept(SimpleNode.java:81) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.<init>(XPathQueryBuilder.java:302) at org.apache.jackrabbit.spi.commons.query.xpath.XPathQueryBuilder.createQuery(XPathQueryBuilder.java:336) at org.apache.jackrabbit.spi.commons.query.xpath.QueryBuilder.createQueryTree(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.createExecutableQuery(SearchIndex.java:722) at org.apache.jackrabbit.core.query.QueryImpl.init(QueryImpl.java:115) at org.apache.jackrabbit.core.SearchManager.createQuery(SearchManager.java:243) at org.apache.jackrabbit.core.query.QueryManagerImpl$QueryFactoryImpl$2.createQuery(QueryManagerImpl.java:222) at org.apache.jackrabbit.core.query.CompoundQueryFactory.createQuery(CompoundQueryFactory.java:67) at org.apache.jackrabbit.core.query.QueryManagerImpl$2.perform(QueryManagerImpl.java:95) at org.apache.jackrabbit.core.query.QueryManagerImpl$2.perform(QueryManagerImpl.java:91) at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216) at org.apache.jackrabbit.core.query.QueryManagerImpl.perform(QueryManagerImpl.java:197) at org.apache.jackrabbit.core.query.QueryManagerImpl.createQuery(QueryManagerImpl.java:91) at org.apache.sling.jcr.resource.JcrResourceUtil.query(JcrResourceUtil.java:52) at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.findResources(JcrResourceProvider.java:250) ... 18 more

Here is the link to the calendar which I am trying to use for importing data to CQ: https://www.google.com/calendar/ical/hartmannricocz%40gmail.com/private-eb8bf541faa33dcffaecf855dace...

I'm trying to import this calendar through feed importer /etc/importers/polling.html

Does anyone have any ideas what could be the problem of this error?

1 Accepted Solution

Avatar

Correct answer by
Level 10

Per error logs You are importing into 302167. XPath search in JSR is based on valid XML names whereas a JCR Node name does not always have to be a valid XML name. 302167 is a valid name in JSR but it is not in XML.  Look at [1] you might have to custom implement Or try importing to node which does not have number & verify.  

[1]   http://jackrabbit.510166.n4.nabble.com/xpath-queries-with-node-names-consisting-of-numbers-td518798....

View solution in original post

3 Replies

Avatar

Correct answer by
Level 10

Per error logs You are importing into 302167. XPath search in JSR is based on valid XML names whereas a JCR Node name does not always have to be a valid XML name. 302167 is a valid name in JSR but it is not in XML.  Look at [1] you might have to custom implement Or try importing to node which does not have number & verify.  

[1]   http://jackrabbit.510166.n4.nabble.com/xpath-queries-with-node-names-consisting-of-numbers-td518798....

Avatar

Level 10

I will walk through this and see if i can duplicate your results. 

Avatar

Level 2

Thank you very much! The problem was in the node name 302167. The problem is solved.