Error when opening WeSay project on Linux

James and I are trying to help someone in a village, via radio conversation.

She recently had her Windows 7 computer reformatted to Wasta 16.04, and pasted her backed-up WeSay/Ngaing/ folder into ~/Documents/WeSay.

Now upon opening the WeSay project she gets an error: Null value found… We can’t see the entire message, but as she read it we heard something about “keyboard controller”, so we looked at the nnf.ldml file in the project folder. It contained a (now-useless) Windows keyboard specification section.

We tried:
(1) after backing up nnf.ldml we had her delete the keyboard section from the file. Same error occurred.
(2) having her create a new, blank Ngaing2 WeSay project, then copying the new nnf.ldml into her existing project. When she opened the project in WeSay Configuration Tool, everything worked until she clicked on the Keyboard tab under Input Systems > Ngaing, when she received the same Null value found error.

Now, away from the radio, we found a Ngaing WeSay project from 2012 in the office backups, which opens fine on my Wasta computer. This old nnf.ldml does not have a keyboard section. But we discovered that there are two other nnf-x-dialect?.ldml files in the WritiingSystems folder of this old project, which we didn’t know about while on the radio.

Would it help the current project if she deleted all the nnf*.ldml files in WeSay/Ngaing/WritingSystems/ and then opened the project? Or should she recreate all the existing writing systems in the blank Ngaing2 project and then paste them over the files in the real Ngaing project?

We tried to recreate the error by setting up dummy projects in which the vernacular writing system had 1) a Windows Keyman layout, and 2) an InKey keyboard layout specified, but we are not able to trigger the error message.

Thanks for any help!
Kim Blewett & James Post

Hi Kim and James,

I’m sorry about the WeSay error that your colleague is experiencing. It’s hard to say specifically what is causing the error, but in the absence of more information I would recommend having her move the nnf*.ldml files out of the WeSay ldml folder and start WeSay up without the LDML files present. On program start WeSay will regenerate them, presumably fixing the problem. The regenerated files won’t have whatever writing system specific settings (keyboard, sort order, spellcheck, etc) but those should be able to be respecified in the WeSay config tool without a lot of trouble.

Please do keep us posted if you continue to be stuck and how this is resolved.


Thank you, Chris,

Yes, this is what we tried, but due to the shortcomings of computer diagnosis via two-way radio we missed the fact that there is more than one nnf*.ldml file in her project until the radio “sked” was over. James and I were searching the hard drive to try to figure out where the keyboarding layout spec kept popping up from after we deleted the nnf.ldml file. We’ll try again tomorrow.

Sigh… Kim

Due to limited communication, I would suggest trying just deleting the WritingSystems folder inside the WeSay project folder. WeSay will recreate the WritingSystems folder and LDML files inside in a valid way. This will hopefully fix whatever unknown issue she has run into. After WeSay is running again, perhaps someone can help her recreate whatever writing system customizations she needs, if any.

Thanks. It’s good to know that deleting this folder won’t damage anything.

I just had another radio sked with Barbara. Short story is, she had a second Ngaing project folder inside the Ngaing folder, so she was seeing two Ngaing projects to open. We pulled one of them out of the WeSay folder, deleted WritingSystems\ in WeSay\Ngaing\ and in a backup folder inside Ngaing, and tried to open the project. The same Null object required message appeared, containing the Keyboarding line.

After trying this with both projects I had her search the WeSay folder for ‘.ldml’ and remove the three files that were still in the backup folder. No success.

Then I had her delete the Writing Systems folder, which had been auto-created, and in WeSay Config she created “a new project from a set of LIFT files”, browsing to Ngaing.lift in her Ngaing project. Still got the error.

Then I had her delete the Writing Systems folder(s) again from all projects and copy her Ngaing.lift outside of the WeSay folder, and create another new project from this isolated Ngaing.lift file. I was a bit surprised that this worked, but the new project was created in WeSay. However, she still got the error and was unable to open the project in WeSay.

The last thing I tried was to have her open this last new project in WeSay Config Tool, go to Input Systems, click on English and then on the Keyboards tab. This also triggered the error message; before we had been focusing on Ngaing and its dialect WSes.

So I’m stumped. I have also created all these new projects on my computer (mine and hers are running Wasta 16.04, same program versions) using my WeSay project RapTest.lift file, and I got no error. Is there some code in her LIFT file that might be triggering the error?

My RapTest.lift file has no instance of “keyboard” in it even though I do have a current, active KMFL keyboard specified in WeSay.

Any more suggestions, please?

Hi Kim,

From all of the things you have said thus far, I am fairly confident that the LIFT file has somehow become corrupt. So the next thing to do is to get the LIFT file. I realize that this is very difficult over radio. Can you have her zip up the LIFT file and send it to you as an email attachment…IP over radio? Once we can reproduce it on your machine or mine, then we can get on with fixing it.


Thanks so much for your help, Chris,

She does not have IP over radio. She says they are working on a nearby cellular tower this week, so she may possibly get cell phone reception soon! If so she can probably email me.

I’ll let you know when/what happens.


Hi Chris,

If you remember this conversation… Here is Barbara’s LIFT file.

I have opened this file on my computer and also on another Wasta machine, and the same error was happening in WeSay Config, every time I clicked on the Keyboard tab of Input Systems. Can you see anything wrong?

Please reply to both James and me.