Question
DCS
GB
Last activity: 14 Dec 2023 8:40 EST
PEGA 8.6 CDH Campaign Failed to create batch OfferBuilder: Class Name is required for all context classes
Hi,
We are using the PEGA CDH 8.6 campaign to deliver the email treatments directly to the customer online (Primary context is PegaCDH-Data-Comms-Subscription class. PegaCDH-Data-Comms-Account is the other context configured in the context dictionary as per PEGA CDH communications xCAR datamodel).
When we run the multichannel outbound campaign using the primary context (Subscription) with DB template enabled to write the result, the campaign completed successfully and DB template populated with the expected results. When we use the same campaign to deliver the offer message using Action Flow, there is an exception in the offer builder rule generated by pega batchout dataflow (campaign engagement is the only difference).
We were able to test the email treatment independently without any issue. However, we found the issue in the OfferBuilder component generated by the PEGA Batchout campaign.
Has anyone encountered a similar error when multi-level decisioning enabled for Batchout campaign?
Full PEGA-Rules error stacktrace as below:
Hi,
We are using the PEGA CDH 8.6 campaign to deliver the email treatments directly to the customer online (Primary context is PegaCDH-Data-Comms-Subscription class. PegaCDH-Data-Comms-Account is the other context configured in the context dictionary as per PEGA CDH communications xCAR datamodel).
When we run the multichannel outbound campaign using the primary context (Subscription) with DB template enabled to write the result, the campaign completed successfully and DB template populated with the expected results. When we use the same campaign to deliver the offer message using Action Flow, there is an exception in the offer builder rule generated by pega batchout dataflow (campaign engagement is the only difference).
We were able to test the email treatment independently without any issue. However, we found the issue in the OfferBuilder component generated by the PEGA Batchout campaign.
Has anyone encountered a similar error when multi-level decisioning enabled for Batchout campaign?
Full PEGA-Rules error stacktrace as below:
ERROR - Encountered exception during data flow run execution [PR-2001] com.pega.dsm.dnode.api.dataflow.StageException: Severe exception in stage: Offer Builder at com.pega.dsm.dnode.api.dataflow.StageException.createSevere(StageException.java:74) ~[d-node.jar:?] at com.pega.dsm.dnode.api.dataflow.DataFlowStage$StageInputSubscriber.onInit(DataFlowStage.java:451) ~[d-node.jar:?] at com.pega.dsm.dnode.api.dataflow.DataFlowExecutor$QueueBasedDataFlowExecutor$1.process(DataFlowExecutor.java:312) ~[d-node.jar:?] at com.pega.dsm.dnode.api.dataflow.DataFlowExecutor$QueueBasedDataFlowExecutor.runEventLoop(DataFlowExecutor.java:218) ~[d-node.jar:?] at com.pega.dsm.dnode.api.dataflow.DataFlow$2.emit(DataFlow.java:331) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl.subscribe(DataObservableImpl.java:59) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.task.strategy.ExecutionStrategy.executeDataFlow(ExecutionStrategy.java:125) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.task.strategy.SinglePartitionExecution.executePartitions(SinglePartitionExecution.java:77) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.service.run.ExecutePartitionsRunnable.executeDataFlowWithPartitions(ExecutePartitionsRunnable.java:86) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.service.run.ExecutePartitionsRunnable.access$900(ExecutePartitionsRunnable.java:34) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.service.run.ExecutePartitionsRunnable$1.run(ExecutePartitionsRunnable.java:67) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.service.run.ExecutePartitionsRunnable$1.run(ExecutePartitionsRunnable.java:62) ~[d-node.jar:?] at com.pega.dsm.dnode.util.PrpcRunnable.execute(PrpcRunnable.java:67) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.prpc.service.ServiceHelper.executeInPrpcContextInternal(ServiceHelper.java:301) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.prpc.service.ServiceHelper.executeInPrpcContext(ServiceHelper.java:146) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.service.run.ExecutePartitionsRunnable.call(ExecutePartitionsRunnable.java:62) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.dataflow.service.run.ExecutePartitionsRunnable.call(ExecutePartitionsRunnable.java:34) ~[d-node.jar:?] at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:108) ~[guava-19.0.jar:?] at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:41) ~[guava-19.0.jar:?] at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:77) ~[guava-19.0.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_302] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_302] at com.pega.dsm.dnode.util.PrpcRunnable$1.run(PrpcRunnable.java:59) ~[d-node.jar:?] at com.pega.dsm.dnode.util.PrpcRunnable$1.run(PrpcRunnable.java:56) ~[d-node.jar:?] at com.pega.dsm.dnode.util.PrpcRunnable.execute(PrpcRunnable.java:67) ~[d-node.jar:?] at com.pega.dsm.dnode.impl.prpc.PrpcThreadFactory$PrpcThread.run(PrpcThreadFactory.java:124) ~[d-node.jar:?] Caused by: com.pega.pegarules.pub.PRRuntimeException: Failed to create batch OfferBuilder: Class Name is required for all context classes at com.pegarules.generated.testgen.Rule_Decision_DDF_Data_Decision_Request_Customer_DF_ProcessOffer_Action_20201215T152458_668_GMT$7$1.onInit(Rule_Decision_DDF_Data_Decision_Request_Customer_DF_ProcessOffer_Action_20201215T152458_668_GMT.java:482) ~[?:?] at com.pega.dsm.dnode.api.dataflow.DataFlowStage$StageInputSubscriber.onInit(DataFlowStage.java:448) ~[d-node.jar:?] ... 24 more Caused by: com.pega.mkt.config.ContextDictionary$InvalidConfigurationException: Class Name is required for all context classes at com.pega.mkt.config.ContextClass.<init>(ContextClass.java:69) ~[pegamkt-08.06.01.jar:?] at com.pega.mkt.config.ContextClass$ContextClassBuilder.build(ContextClass.java:394) ~[pegamkt-08.06.01.jar:?] at com.pega.mkt.config.ContextDictionary.fromPage(ContextDictionary.java:214) ~[pegamkt-08.06.01.jar:?] at com.pega.mkt.offer.OfferBuilder.<init>(OfferBuilder.java:162) ~[pegamkt-08.06.01.jar:?] at com.pega.mkt.offer.OfferBuilder.<init>(OfferBuilder.java:119) ~[pegamkt-08.06.01.jar:?] at com.pegarules.generated.testgen.Rule_Decision_DDF_Data_Decision_Request_Customer_DF_ProcessOffer_Action_20201215T152458_668_GMT$7$1.onInit(Rule_Decision_DDF_Data_Decision_Request_Customer_DF_ProcessOffer_Action_20201215T152458_668_GMT.java:478) ~[?:?] at com.pega.dsm.dnode.api.dataflow.DataFlowStage$StageInputSubscriber.onInit(DataFlowStage.java:448) ~[d-node.jar:?]
Thanks,
Nanjundan Chinnasamy