6

Working on a simple POC for SmartTarget, I have one trigger based on the browser (Chrome, Firefox, etc.) to return different promotional content. My content is successfully published to Fredhopper and FH has since been reindexed.

I've worked pretty substantially with the last version of SmartTarget and am at a loss with the following stack trace as I've never had to be concerned with SmartTarget metadata in the past version. Any ideas?

2014-08-05 11:33:43,346 ERROR TimeoutQueryRunner - The fredhopper query thread had an exception during execution
java.util.concurrent.ExecutionException: java.lang.RuntimeException: com.tridion.smarttarget.SmartTargetException: Unable to find the SmartTarget MetaData Promotion in the Promotions returned by Fredhopper.
    at java.util.concurrent.FutureTask.report(Unknown Source) ~[na:1.7.0_45]
    at java.util.concurrent.FutureTask.get(Unknown Source) ~[na:1.7.0_45]
    at com.tridion.smarttarget.tags.TimeoutQueryRunner.executeQuery(TimeoutQueryRunner.java:58) ~[smarttarget_core.jar:na]
java.lang.RuntimeException: com.tridion.smarttarget.SmartTargetException: Unable to find the SmartTarget MetaData Promotion in the Promotions returned by Fredhopper.
    at com.tridion.smarttarget.query.ResultSetImpl.<init>(ResultSetImpl.java:42) ~[smarttarget_core.jar:na]
    at com.tridion.smarttarget.query.QueryImpl.executeFredHopperQuery(QueryImpl.java:134) ~[smarttarget_core.jar:na]
    at com.tridion.smarttarget.query.QueryImpl.execute(QueryImpl.java:169) ~[smarttarget_core.jar:na]
    at com.tridion.smarttarget.tags.TimeoutQueryRunner$1.call(TimeoutQueryRunner.java:48) ~[smarttarget_core.jar:na]
    at com.tridion.smarttarget.tags.TimeoutQueryRunner$1.call(TimeoutQueryRunner.java:43) ~[smarttarget_core.jar:na]
    at java.util.concurrent.FutureTask.run(Unknown Source) ~[na:1.7.0_45]
    at java.lang.Thread.run(Unknown Source) ~[na:1.7.0_45]
Caused by: com.tridion.smarttarget.SmartTargetException: Unable to find the SmartTarget MetaData Promotion in the Promotions returned by Fredhopper.
    at com.tridion.smarttarget.query.ResultSetImpl.load(ResultSetImpl.java:142) ~[smarttarget_core.jar:na]
    at com.tridion.smarttarget.query.ResultSetImpl.<init>(ResultSetImpl.java:40) ~[smarttarget_core.jar:na]
    ... 6 common frames omitted
4

Looks like you haven't run the Migration Tool, and also haven't requested a list of Promotions yet. The MetaData Promotion is needed for the system to work, but it will be automatically created if it doesn't exist; but that can only happen on the CM side, so it wouldn't have happened if you went straight to querying. When doing a query, it will expect it to be there already.

In short, if you're upgrading you should run the migration tool. If this is a fresh installation, try going to the Targeting section of the suite and load the list of Promotions for the given system. That should fix the issue.

| improve this answer | |
  • This is a fresh install of SmartTarget2014 with an upgraded instance of Tridion (from 2013 to 2013sp1). The Targeting section of Tridion returns an error. Error processing response stream. Server failed with following message: Property 'TriggerTypes' cannot be requested, there was no resource selected – code-monkee Aug 5 '14 at 18:20
  • Looks like you have not installed the OData part of SmartTarget (or it's misconfigured). – Peter Kjaer Aug 6 '14 at 5:54
  • Thank you! I missed the step for adding the smarttarget_odata_cartridge – code-monkee Aug 16 '14 at 5:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.