Can't edit the Label Component Text property

We upgraded to Servoy 2024.3.0.3942_rc3 and Build completed and NG1 running okay but when we tried to edit the label text property then we are getting the error like,

“Cannot read field “value” because “” is null”

, please see below.

[attachment=0]SvyError.png[/attachment]

Did we miss anything?

Hi Everyone,

Any idea about this error message?

@Servoy Team, please share some suggestions on this issue.

Hi Chaitanyas,

only from the screenshoot hard to tell what the issue is; maybe a corrupted workspace ?
You can try to clear ( fully remove ) the .metadata folder from your WORKSPACE_FOLDER/.metadata

It won’t physically delete the project files. You can re-import the projects again into Servoy from File → Import → General, Import Projects into Workspace …

Note, deleting the .metadata you will lose your eclipse preferences, therefore consider making a backup

Regards,
Paolo

The property name should be text. I’d recommend doing a clean rebuild of Servoy packages.

In Solution Explorer, right click Servoy Packages and select Copy the Titanium NGClient sources.

When prompted choose Copy & Clean build.

Hi Chaitanyas,

The replies of both Paolo and Seain seem like a good starting point.
The easiest one is rebuilding the Servoy packages as Seain described which is non-destructive and can be done within your current workspace without loosing anything.

If that doesn’t resolve it, the problem could be in your workspace and you’lll need to clean that somehow.
In order to try that I would personally, choose ‘switch workspace’ and create a temporary new one.
And follow the steps as Paolo described.

By taking this approach your old workspace is not touched and you can always switch back to that.
Because it is a new workspace, the rebuild of Servoy Packages will be done automatically.

Hope this helps

Hi Sean and Paolo,

I tried both but no luck, seems, it’s an issue with the old forms migrating from older version to Servoy 2024 and it’s fine with new forms.

Hi Team,

Did I miss anything?

Any suggestions to resolve this issue?

Appreciate your help.

Curious, if you open an affected form “some_form.frm” in a text editor and locate the object that represents the label, does it have a text property or a value property?

Example:
[attachment=0]label_property_example.png[/attachment]

Hi Seain,

Yes, there is a property called, “text” for the label element.

It’s a responsive form.

Thanks
Chaitanya S

Hi Chaitanyas,

in the meantime the Servoy versions have been updated (I’ve noticed you started this thread running rc3)
did you update to the last 2024.03 version in the meantime?

Also, I assume you’ve updated all the component packages?

If updating didn’t help, have a look at .log file inside the .metadata folder of your workspace.
Maybe that will give some pointers

Also curious, is this only a problem on a single form, or do all forms show this behaviour?
What happens if you create a new form with a similar element and you try to change the property.

Lots of questions, but as Paolo mentioned in his first reply: it is hard to tell what the issue is from the given information.

Hopefully you will be able to provide more information.

Hi Mboegem,

It’s the same for the new form and it’s only happening for Responsive form and CSS and normal form is fine.

Thanks
Chaitanya S

Hi Mboegem,

Following are the logs registered when edit the label text and also, I observed that the label field can’t select in the form designer, I mean, the properties are not showing for the label field,

!ENTRY org.eclipse.e4.ui.workbench 4 0 2024-10-03 13:22:23.372
!MESSAGE Cannot read field “value” because “” is null
!STACK 0
java.lang.NullPointerException: Cannot read field “value” because “” is null
at java.base/java.lang.String$CaseInsensitiveComparator.compare(Unknown Source)
at java.base/java.lang.String$CaseInsensitiveComparator.compare(Unknown Source)
at java.base/java.util.TimSort.binarySort(Unknown Source)
at java.base/java.util.TimSort.sort(Unknown Source)
at java.base/java.util.Arrays.sort(Unknown Source)
at com.servoy.eclipse.ui.property.PersistPropertySource.createLabelForPropertyController(PersistPropertySource.java:1943)
at com.servoy.eclipse.ui.property.PersistPropertySource.createOtherPropertyDescriptorIfAppropriate(PersistPropertySource.java:1527)
at com.servoy.eclipse.ui.property.PersistPropertySource.createPropertyDescriptor(PersistPropertySource.java:1285)
at com.servoy.eclipse.ui.property.PersistPropertySource.createPropertyDescriptor(PersistPropertySource.java:773)
at com.servoy.eclipse.ui.property.PersistPropertySource.createPropertyDescriptor(PersistPropertySource.java:699)
at com.servoy.eclipse.ui.property.PersistPropertySource.registerProperty(PersistPropertySource.java:638)
at com.servoy.eclipse.ui.property.PersistPropertySource.init(PersistPropertySource.java:460)
at com.servoy.eclipse.ui.property.PersistPropertySource.getPropertyDescriptors(PersistPropertySource.java:706)
at com.servoy.eclipse.ui.views.properties.PropertySheetEntry.computeMergedPropertyDescriptors(PropertySheetEntry.java:192)
at com.servoy.eclipse.ui.views.ModifiedPropertySheetEntry.computeMergedPropertyDescriptors(ModifiedPropertySheetEntry.java:118)
at com.servoy.eclipse.ui.views.properties.PropertySheetEntry.refreshChildEntries(PropertySheetEntry.java:594)
at com.servoy.eclipse.ui.views.properties.PropertySheetEntry.setValuesInternal(PropertySheetEntry.java:871)
at com.servoy.eclipse.ui.views.ModifiedPropertySheetEntry.setValuesInternal(ModifiedPropertySheetEntry.java:259)
at com.servoy.eclipse.ui.views.properties.PropertySheetEntry.setValues(PropertySheetEntry.java:841)
at org.eclipse.ui.views.properties.PropertySheetViewer.setInput(PropertySheetViewer.java:970)
at org.eclipse.ui.views.properties.PropertySheetPage.selectionChanged(PropertySheetPage.java:501)
at org.eclipse.ui.views.properties.PropertySheet.showSelectionAndDescription(PropertySheet.java:554)
at org.eclipse.ui.views.properties.PropertySheet.selectionChanged(PropertySheet.java:534)
at org.eclipse.ui.internal.e4.compatibility.SelectionService.notifyListeners(SelectionService.java:266)
at org.eclipse.ui.internal.e4.compatibility.SelectionService.handlePostSelectionChanged(SelectionService.java:123)
at org.eclipse.ui.internal.e4.compatibility.SelectionService.lambda$2(SelectionService.java:78)
at org.eclipse.e4.ui.internal.workbench.SelectionAggregator$3.run(SelectionAggregator.java:163)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
at org.eclipse.e4.ui.internal.workbench.SelectionAggregator.notifyPostListeners(SelectionAggregator.java:160)
at org.eclipse.e4.ui.internal.workbench.SelectionAggregator$6.lambda$0(SelectionAggregator.java:250)
at org.eclipse.e4.core.contexts.RunAndTrack.runExternalCode(RunAndTrack.java:59)
at org.eclipse.e4.ui.internal.workbench.SelectionAggregator$6.changed(SelectionAggregator.java:250)
at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:105)
at org.eclipse.e4.core.internal.contexts.EclipseContext.processScheduled(EclipseContext.java:358)
at org.eclipse.e4.core.internal.contexts.EclipseContext.set(EclipseContext.java:374)
at org.eclipse.e4.ui.internal.workbench.SelectionServiceImpl.setPostSelection(SelectionServiceImpl.java:39)
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.lambda$2(CompatibilityPart.java:132)
at org.eclipse.ui.part.MultiPageSelectionProvider$1.run(MultiPageSelectionProvider.java:113)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
at org.eclipse.ui.part.MultiPageSelectionProvider.fireEventChange(MultiPageSelectionProvider.java:110)
at org.eclipse.ui.part.MultiPageSelectionProvider.firePostSelectionChanged(MultiPageSelectionProvider.java:104)
at org.eclipse.ui.part.MultiPageEditorSite.handlePostSelectionChanged(MultiPageEditorSite.java:475)
at com.servoy.eclipse.ui.util.SelectionProviderAdapter$1.run(SelectionProviderAdapter.java:71)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at com.servoy.eclipse.ui.util.SelectionProviderAdapter.fireSelectionChanged(SelectionProviderAdapter.java:67)
at com.servoy.eclipse.ui.util.SelectionProviderAdapter.setSelection(SelectionProviderAdapter.java:89)
at com.servoy.eclipse.designer.editor.rfb.actions.handlers.SetSelectionHandler$1.run(SetSelectionHandler.java:93)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4046)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3662)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:648)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:555)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:651)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:588)
at org.eclipse.equinox.launcher.Main.run(Main.java:1459)