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
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Form Option Datasource error in getItems()

chandeshj240320
Level 1
Level 1

Hi all,

 

I'm writing sling model with exporter framework to print JSON formatted output.

While rest all components work fine, there is some issue with form option component extended from core/wcm/components/form/options/v2/options.

I can get the output in Items when using the component with local and list.

But whenever using Datasource with correct datasource value then t throws following error:

 

Failed to include the datasource at weretail/components/form/options/datasource/countriesdatasource
org.apache.sling.api.request.RecursionTooDeepException

 

However same datasource works with normal rendering: http://localhost:4502/content/we-retail/us/en/user/checkout.html?wcmmode=disabled

 

Current code is as shown below, here superSelf.getItems() returns empty in case of datasource while in other case it works fine:


@Override
public List<OptionItem> getItems() {
return superSelf.getItems();
}

 

Any help in this would be a great relief.

1 Accepted Solution
Vijayalakshmi_S
Correct answer by
Community Advisor
Community Advisor

Hi @chandeshj240320,

Can you confirm if you are overriding the options component dialog as well or just the custom implementation for Options Interface. 

View solution in original post

3 Replies
Vijayalakshmi_S
Correct answer by
Community Advisor
Community Advisor

Hi @chandeshj240320,

Can you confirm if you are overriding the options component dialog as well or just the custom implementation for Options Interface. 

View solution in original post

chandeshj240320
Level 1
Level 1
It's just overriding or you can say extension of option component, the only difference is instead of printing authored value I am exporting it to Json. However, with data source this.getItems() is empty.
Vijayalakshmi_S
Community Advisor
Community Advisor

Hi @chandeshj240320,

Sorry for the delayed response, I missed this thread. 

Try creating sample datasource within your project code base and try using the same in Options component. 

Also, could you please let know the below

  • Parent class that you are using(superSelf in your snippet)
  • Need for custom implementation for Options component. (all OOTB core component exposes data in JSON format using Sling Model Exporter)