Affects Version/s: 7.2.X, 7.3.X, Master
Branch Version/s:7.3.x, 7.2.x
Backported to Branch:Committed
Sprint:Forms_7.4_06, Forms_7.4_07, Forms_7.4_08
Git Pull Request:
Steps to Reproduce:
- Create a custom field that includes a custom setting or use this one
- If you are on Master, you can use the following jar: com.liferay.dynamic.data.mapping.form.custom.field.jar
- Deploy the custom field to Liferay
- If you are using the jar above, copy the jar to LIFERAY_HOME/osgi/modules and start the portal
- Go to Content & Data > Forms -> Add a new Form
- Add the custom field
- Add a text field and a numeric field to the form
- Go to Rules
- Create a Rule: If Text Field is not empty, Show Numeric Field
- Save Rule
- Publish the form
- Go to the published form
- Make sure that the custom field renders it's custom setting correctly
- If you are using the jar above, the custom setting will be the character limit. So, type in the custom field until you reach the character limit defined in the form builder.
- Type in the text field in order to activate the form rule.
- The numeric field should be displayed and the custom form field should be unaffected.
- The numeric field is displayed, but the custom form field no longer renders it's custom setting correctly because the setting is not returned in the api response.
- If you are using the jar above: It is no longer possible to type in the custom field.
This issue was initially reported here: https://issues.liferay.com/browse/PTR-2163
NOTE: When a form rule is activated a new form context is returned by an api call '/o/dynamic-data-mapping-form-context-provider/'. This api call eventually get's here while creating the form context. It looks like while creating the context it will only add settings that it knows about, which excludes my new setting.