Prefilling form with JSON

christofhed3545

21-02-2018

Hi

Currently i'm working on a case to prefill a form. With XML it works fine but with JSON it doesn't seems to work.

As reference I used this page.

Adobe Experience Manager Help | Prefill adaptive form fields

It seems that something is missing for prefilling a form with json.

Kind regards,

Christofhe

Accepted Solutions (1)

Accepted Solutions (1)

James_R_Green

21-02-2018

Hi christofhed35451717,

It works pretty much the same as the XML example you have working.  You use the two functions:

guideBridge.getGuideState

guideBridge.restoreGuideState

To test this out, when previewing in inspector console do this:

window.guideBridge.getGuideState({

     success : function (guideResultObj) {

         jsonData = guideResultObj.data;

         console.log(JSON.stringify(jsonData,null,2));

     },

     error : function (guideResultObj) {

         // log error

     },reducedJSON:true

});

Copy the string produced and restore:

var jsonData = "guideState": {

  "guideDom": {

etc"; //output from getGuideState

guideBridge.restoreGuideState({

  guideState : jsonData.guideState,

  error : function (guideResultObject) {

  console.log('failed', guideResultObject);

  }

  });

Thanks,

James

Answers (3)

Answers (3)

jagjeetthukral

21-02-2018

A few questions to identify the issue:

1. Is your forms Json Model Based?

2. Is the name of field which your are trying to populate "textbox"

If answer to both the question is yes, then please try below JSON

{

   "afData": {

      "afUnboundData": {

         "data": {

            "textbox": "testing"

         }

      }

}

Hope this helps !!!

Cheers,

Jagjeet Singh

AEM Forms Blog

christofhed3545

21-02-2018

Hi jagjeetthukral

This is the format of my json

{

   "afData": {

      "afUnboundData": {

         "data": {

            "textbox": "testing"

         }

      },

      "afBoundData": {

         "data": null

      }

   }

}

Probably this is not right?

Kind reagrds,

Christofhe

jagjeetthukral

21-02-2018

Hi christofhed35451717​,

The instructions here work as is. I guess we will need some more information to help you debug. For starters you can compare the json you are populating your form with to the json created when you save the form.

You can get the json on form save easily via network panel.

While comparing you can have it either with or without afdata wrapper.

Cheers,Jagjeet Singh

AEM Forms Blog