Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new

Learn more

View all

Sign in to view all badges

graphiql doesnt work: "Cannot serve request to /content/graphiql/ in"

Level 7
Level 7

I installed graphiql according to this article


Here we can see the package is installed:



But when I go to the required url:




I get:



Cannot serve request to /content/graphiql/ in


I am installing on a fresh instance of the AEM cloud SDK, with a clean install of the wknd site directly from git (which has grapql endpoint configured etc)


Any ideas? The tutorial has no additional configuration that I can see.


I also tried "reinstall"


Here is the complete output.

Request Progress:

      0 TIMER_START{Request Processing}
      4 COMMENT timer_end format is {<elapsed microseconds>,<timer name>} <optional message>
     21 LOG Method=GET, PathInfo=null
     27 TIMER_START{handleSecurity}
   1584 TIMER_END{1555,handleSecurity} authenticator returns true
   1866 TIMER_START{ResourceResolution}
   1977 TIMER_END{109,ResourceResolution} URI=/content/graphiql.html resolves to Resource=JcrNodeResource, type=graphql/components/graphiql, superType=null, path=/content/graphiql
   1986 LOG Resource Path Info: SlingRequestPathInfo: path='/content/graphiql', selectorString='null', extension='html', suffix='null'
   1986 TIMER_START{ServletResolution}
   1989 TIMER_START{resolveServlet(/content/graphiql)}
   2008 TIMER_END{17,resolveServlet(/content/graphiql)} Using servlet
   2011 TIMER_END{24,ServletResolution} URI=/content/graphiql.html handled by
   2017 LOG Applying Requestfilters
   2069 LOG Calling filter: com.adobe.granite.resourceresolverhelper.impl.ResourceResolverHelperImpl
   2085 LOG Calling filter:
   2091 LOG Calling filter: com.adobe.granite.csrf.impl.CSRFFilter
   2100 LOG Calling filter:
   2105 LOG Calling filter: com.adobe.granite.httpcache.impl.InnerCacheFilter
   2118 LOG Calling filter:
   2124 LOG Calling filter: com.adobe.cq.history.impl.HistoryRequestFilter
   2405 LOG Calling filter:
   2429 LOG Calling filter: com.adobe.cq.wcm.core.components.internal.servlets.CoreFormHandlingServlet
   2437 LOG Calling filter: com.adobe.granite.optout.impl.OptOutFilter
   2448 LOG Calling filter:
   2458 LOG Calling filter: com.adobe.cq.wcm.core.extensions.amp.internal.AmpModeForwardFilter
   2664 LOG Calling filter:
   2673 LOG Calling filter:
   2678 LOG Calling filter:
   2685 LOG Calling filter:
   2882 LOG Calling filter:
   2891 LOG Calling filter: com.adobe.granite.requests.logging.impl.RequestLoggerImpl
   2907 LOG Calling filter:
   2951 LOG Calling filter:
   2969 LOG Calling filter:
   2978 LOG Calling filter:
   2993 LOG Applying Componentfilters
   2996 LOG Calling filter:
   3001 LOG Calling filter:
   3007 LOG Calling filter:
   3149 LOG Calling filter:
   3154 LOG Calling filter:
   3163 TIMER_START{}
   3177 LOG No renderer for extension html
   3198 LOG Applying Error filters
   3200 LOG Calling filter:
   3203 LOG Calling filter:
   3212 TIMER_START{handleError:status=404}
   3241 TIMER_END{27,handleError:status=404} Using handler BundledScriptServlet (/libs/sling/servlet/errorhandler/404.jsp)
   5984 LOG Found processor for post processing ProcessorConfiguration: {contentTypes=[text/html], order=-1, active=true, valid=true, processErrorResponse=true, pipeline=(generator=Config(type=htmlparser, config={}), transformers=(Config(type=linkchecker, config={}), Config(type=mobile, config=JcrPropertyMap [node=Node[NodeDelegate{tree=/libs/cq/config/rewriter/default/transformer-mobile: { jcr:primaryType = nt:unstructured, component-optional = true}}], values={jcr:primaryType=nt:unstructured, component-optional=true}]), Config(type=mobiledebug, config=JcrPropertyMap [node=Node[NodeDelegate{tree=/libs/cq/config/rewriter/default/transformer-mobiledebug: { jcr:primaryType = nt:unstructured, component-optional = true}}], values={jcr:primaryType=nt:unstructured, component-optional=true}]), Config(type=contentsync, config=JcrPropertyMap [node=Node[NodeDelegate{tree=/libs/cq/config/rewriter/default/transformer-contentsync: { jcr:primaryType = nt:unstructured, component-optional = true}}], values={jcr:primaryType=nt:unstructured, component-optional=true}]), serializer=Config(type=htmlwriter, config={}))}
   6278 TIMER_END{6276,Request Processing} Dumping SlingRequestProgressTracker Entries


2 Replies
Level 1
Level 1
Hi, did you find any solution for this? Thanks
Level 7
Level 7

Interestingly, the problem was cors.  I was using a chrome plugin, which, even though running on local host failed chrome cors check.

I switched to hitting the graphql endpoint from postman, and problem solved (for local host at least). 

Due to he missing features and non-standard and poorly documented syntax in the AEM graphQL implementation, we abandoned it, and use servlets + queryBuilder instead.

Performance with queryBuild is not that great, even with low number of content items, so we are thinking of writing our own in memory content cache and our own query language.