FreeTextAnnotation crate by code when export to xfdf then reimport with getFileData got errorTypeError: Cannot convert undefined or null to object

in webviewer version 7.3
FreeTextAnnotation crate by code in sample

    const freeText = new Annotations.FreeTextAnnotation();
      freeText.PageNumber = 1;
      freeText.X = 150;
      freeText.Y = 200;
      freeText.Width = 150;
      freeText.Height = 50;
      freeText.setPadding(new Annotations.Rect(0, 0, 0, 0));
      freeText.setContents('My Text');
      freeText.FillColor = new Annotations.Color(0, 255, 255);
      freeText.FontSize = '16pt';

when export with exportAnnotations() I got
<annots><freetext page="0" rect="150,345,300,395" color="#00FFFF" flags="print" name="af1b35e9-2b1d-e440-816a-42adde1cac15" subject="Free text" date="D:20210430214350+07'00'" creationdate="D:20210430214350+07'00'" TextColor="#FF0000" FontSize="16"><trn-custom-data bytes="{&quot;trn-wrapped-text-lines&quot;:&quot;[\&quot;My Text \&quot;]&quot;}"/><contents>My Text</contents><defaultappearance>0 0 0 rg /Helvetica 16 Tf</defaultappearance><defaultstyle>font: Helvetica 16pt; text-align: left; color: #FF0000</defaultstyle></freetext><freetext page="0" rect="150,345,300,395" color="#00FFFF" flags="print" name="af1b35e9-2b1d-e440-816a-42adde1cac15" subject="Free text" date="D:20210430214350+07'00'" creationdate="D:20210430214350+07'00'" TextColor="#FF0000" FontSize="16"><trn-custom-data bytes="{&quot;trn-wrapped-text-lines&quot;:&quot;[\&quot;My Text \&quot;]&quot;}"/><contents>My Text</contents><defaultappearance>0 0 0 rg /Helvetica 16 Tf</defaultappearance><defaultstyle>font: Helvetica 16pt; text-align: left; color: #FF0000</defaultstyle></freetext></annots>

after import it back again with doc.getFileData({ ‘xfdfString’: xfdfString }); there error
TypeError: Cannot convert undefined or null to object

this code work fine on webviewer version 7.2

Thanks for contacting us for support.
I tested .getFileData() on our demo site: https://www.pdftron.com/webviewer/demo/ (WebViewer 7.3.1), but unfortunately, I didn’t see any errors:
The following is my code:

const doc = docViewer.getDocument();
const xfdfString = `<?xml version="1.0" encoding="UTF-8"?>
<xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve">
  <pdf-info xmlns="http://www.pdftron.com/pdfinfo" version="2" import-version="3" />
  <fields />
  <annots>
    <freetext page="0" rect="150,345,300,395" color="#00FFFF" flags="print" name="af1b35e9-2b1d-e440-816a-42adde1cac15" subject="Free text" date="D:20210430214350+07'00'" creationdate="D:20210430214350+07'00'" TextColor="#FF0000" FontSize="16">
      <trn-custom-data bytes="{&quot;trn-wrapped-text-lines&quot;:&quot;[\&quot;My Text \&quot;]&quot;}" />
      <contents>My Text</contents>
      <defaultappearance>0 0 0 rg /Helvetica 16 Tf</defaultappearance>
      <defaultstyle>font: Helvetica 16pt; text-align: left; color: #FF0000</defaultstyle>
    </freetext>
    <freetext page="0" rect="150,345,300,395" color="#00FFFF" flags="print" name="af1b35e9-2b1d-e440-816a-42adde1cac15" subject="Free text" date="D:20210430214350+07'00'" creationdate="D:20210430214350+07'00'" TextColor="#FF0000" FontSize="16">
      <trn-custom-data bytes="{&quot;trn-wrapped-text-lines&quot;:&quot;[\&quot;My Text \&quot;]&quot;}" />
      <contents>My Text</contents>
      <defaultappearance>0 0 0 rg /Helvetica 16 Tf</defaultappearance>
      <defaultstyle>font: Helvetica 16pt; text-align: left; color: #FF0000</defaultstyle>
    </freetext>
  </annots>
  <pages>
    <defmtx matrix="1,0,0,-1,0,792" />
  </pages>
</xfdf>`;
// saves the document with annotations in it
const data = await doc.getFileData({ 'xfdfString': xfdfString });

console.log('data', data); // array buffer

One thing I noticed is that the XFDF string you posted is not complete, it should be something like this:

<?xml version="1.0" encoding="UTF-8"?>
<pdf-info xmlns="http://www.pdftron.com/pdfinfo" version="2" import-version="3" />
<fields />
<annots> .....your annots data...... </annots>
<pages>
<defmtx matrix="1,0,0,-1,0,792" />

If you still see errors, please send me your entire code, so I can try to run on my side

Oscar

I just tried to upgrade my lib to 7.3.1 stable nightly version
the problem is now gone

thank you