Expand my Community achievements bar.

Submissions are now open for the 2026 Adobe Experience Maker Awards.

Mark Solution

This conversation has been locked due to inactivity. Please create a new post.

ContextHub.console is not a function error in AEM 6.5

Avatar

Level 1

Hi,

We are trying to set up Context Hub in 6.5 and getting an error "Uncaught TypeError: ContextHub.console is not a function". Tried resolving using dependencies and changing the sling resourcetype from /libs/granite.. to granite path but its not working.

Can someone please help on the issue.

6 Replies

Avatar

Employee Advisor

Try comparing nodes under the path at [1] with a working instance(Or OOTB 6.5) and check if there are any missing or extra nodes.

[1]/libs/granite/contexthub

Avatar

Employee

Hi swetap37476554,

Can you share the scenario in which the JavaScript error is thrown (share replication steps)?  Particularly, can you replicate this error thrown with the We.Retail sample content?  I referenced [1] to review the We.Retail sample content that has ContextHub already configured.

My vanilla 6.5 install showed me that ContextHub.console is not a function -- it is an object:

ContextHub

  1. {Callbacks: {…}, version: "0.4.18-20190304-1526", Paths: {…}, Constants: {…}, console: {…}, …}
    1. ...
    2. console:
      1. debug: ƒ ()
      2. error: ƒ ()
      3. info: ƒ ()
      4. log: ƒ ()
      5. time: ƒ ()
      6. timeEnd: ƒ ()
      7. timeStamp: ƒ ()
      8. warn: ƒ ()
      9. __proto__: Object

I used Developer Tool to call 'ContextHub' to review the object and what is present.

Regards,

Lisa

[1] Adding ContextHub to Pages and Accessing Stores

Avatar

Former Community Member

It looks like Adobe used to have documentation on these use cases [1]. However, I can't find the 6.5 version of this document.

1.  Using the Adobe Experience Manager ContextHub to work with Personal Experiences

Avatar

Employee

Hello,

Please share the complete stack trace of js error - Uncaught TypeError: ContextHub.console is not a function

Regards,

Vishu

Avatar

Employee Advisor

I am working on a similar issue and noticed this issue was caused by the syntax error at line 31. It should be :

ContextHub.console.log(ContextHub.Shared.timestamp(), '[loading] cq.contexthub - store.clientcontext-backedstore.js (clientcontext connector)');

There were extra quotes around the console."log" which was causing the issue. Try checking if that is the case here.

[1] /libs/cq/personalization/contexthub/components/stores/clientcontext-backedstore/store.clientcontext-backedstore.js

Avatar

Level 1

 

In below files also instead of using "ContextHub.console.log()" they committed ContextHub.console("log","") which causing "ContextHub.console is not a function" error.

can you please fix them

  1. /libs/cq/personalization/contexthub/clientlibs/contexthub/ContextHub.Store.ClientContextBackedStore.js

  2. /libs/cq/personalization/contexthub/clientlibs/clientcontextprofile/store.clientcontextprofile.js

 
 

contexthub_issue.png

 

The following has evaluated to null or missing: ==> liql("SELECT id, body, post_time, author.login, author.rank, metrics.views FROM messages WHERE topic.id = '${topicId}' ORDER BY post_time ASC LIMIT 1000").data.items [in template "analytics-container" at line 76, column 22] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign replies = liql("SELECT id, bo... [in template "analytics-container" at line 76, column 3] ----