Failed upgrade process com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess

Issue

  • During your upgrade process, you might encounter an error where the upgrade step for module com.liferay.dynamic.data.mapping.service fails due to a NullPointerException:
    Caused by: java.lang.NullPointerException
      at com.liferay.dynamic.data.mapping.internal.io.DDMFormValuesJSONDeserializer.getDDMFormFieldValues(DDMFormValuesJSONDeserializer.java:137) ~[?:?]
      at com.liferay.dynamic.data.mapping.internal.io.DDMFormValuesJSONDeserializer.setDDMFormFieldValues(DDMFormValuesJSONDeserializer.java:184) ~[?:?]
      at com.liferay.dynamic.data.mapping.internal.io.DDMFormValuesJSONDeserializer.deserialize(DDMFormValuesJSONDeserializer.java:85) ~[?:?]
      at com.liferay.dynamic.data.mapping.util.DDMFormValuesDeserializeUtil.deserialize(DDMFormValuesDeserializeUtil.java:39) ~[?:?]
      at com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess._upgradeDDMContentReferences(DynamicDataMappingUpgradeProcess.java:338) ~[?:?]
      at com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess._upgradeDDLDDMContentReferences(DynamicDataMappingUpgradeProcess.java:310) ~[?:?]
      at com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess.doUpgrade(DynamicDataMappingUpgradeProcess.java:77) ~[?:?]
      at com.liferay.portal.kernel.upgrade.UpgradeProcess.lambda$upgrade$0(UpgradeProcess.java:130) ~[portal-kernel.jar:?]
      at com.liferay.portal.db.partition.DBPartitionUtil.forEachCompanyId(DBPartitionUtil.java:126) ~[portal-impl.jar:?]
      at com.liferay.portal.dao.db.BaseDB.process(BaseDB.java:337) ~[portal-impl.jar:?]
      at com.liferay.portal.kernel.dao.db.BaseDBProcess.process(BaseDBProcess.java:387) ~[portal-kernel.jar:?]
      at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:115) ~[portal-kernel.jar:?]
      ...
  • The issue comes from the fact that during this upgrade process after a select, the DDMContent table rows do not have any value in the data_ field, and this is causing NPE.

Environment

  • Liferay DXP 7.4

Resolution

  • You can either clear the faulty submitted Forms from the UI or,
  • Make sure that these rows have valid data_ values, for example:
    {"availableLanguageIds":["en_US"],"defaultLanguageId":"en_US","fieldValues":[{"instanceId":"Vzi8vaU9","name":"Field90060531","fieldReference":"Field90060531","value":{"en_US":"test submission"}}]}

Additional Information

  • The DDMContent rows are storing data from submitted Forms
Was this article helpful?
0 out of 0 found this helpful