Details
-
Bug
-
Status: Closed
-
Resolution: Fixed
-
7.0.X, 7.1.X, Master
-
7.2.x, 7.1.x, 7.0.x
-
Committed
-
3
Description
Description:
Kaleo Designer breaks when user tries to input an improper workflow definition.
After some initial testings, adding '%' to the XML workflow definition would cause the portlet to fail and Javascript console error is thrown (shown below). There is no issue with other non-ASCII characters, but this may be an encoding issue.
Note: Workflow portlet does NOT break when Kaleo Designer is NOT enabled.
Reproduction Steps:
0. Enable Kaleo Designer
1. Under Control Panel > Configuration > Workflow, duplicate the "single approver" workflow
OR Use the "+" icon to add a new workflow (in 70x it's under Control Panel > Configuration > Kaleo Designer)
2. Edit the workflow
3. Click on the 'Source' tab and paste the contents of the invalid_input_workflow.xml attached
*Or, you can just add '%' in a description or template tag
4. Click on 'Publish' or 'Update'
Expected Result:
User should be able to save the workflow definition. Portlet should not break per user's input with '%'
Actual Result:
Workflow publishes successfully, but Kaleo designer portlet is no longer usable (see attached kaleo_disabled.png screenshot). User is unable to access the Kaleo designer portlet for that workflow any longer.
The following browser console Uncaught URIError: URI malformed error appears:
?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/portal-workflow-kaleo-designer-web-2.0.0/designer/js/xml_definition.js&/o/portal-workflow-kaleo-designer-web-2.0.0/designer/js/xml_definition_serializer.js:11 Uncaught URIError: URI malformed
at decodeURIComponent (<anonymous>)
at component._sanitizeDefinitionXML (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/portal-workflow-kaleo-designer-web-2.0.0/designer/js/xml_definition.js&/o/portal-workflow-kaleo-designer-web-2.0.0/designer/js/xml_definition_serializer.js:11)
at component.initializer (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/portal-workflow-kaleo-designer-web-2.0.0/designer/js/xml_definition.js&/o/portal-workflow-kaleo-designer-web-2.0.0/designer/js/xml_definition_serializer.js:2)
at component._initHierarchy (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/aui/base-core/base-core-min.js&/o/frontend-js-web/aui/base-observable/base-observable-min.js&/o/frontend-js-web/aui/aui-widget-cssclass/aui-widget-cssclass-min.js&/o/frontend-js-web/aui/aui-widget-toggle/aui-widget-toggle-min.js&/o/frontend-js-web/liferay/store.js:1)
at component._baseInit (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/aui/base-core/base-core-min.js&/o/frontend-js-web/aui/base-observable/base-observable-min.js&/o/frontend-js-web/aui/aui-widget-cssclass/aui-widget-cssclass-min.js&/o/frontend-js-web/aui/aui-widget-toggle/aui-widget-toggle-min.js&/o/frontend-js-web/liferay/store.js:1)
at component.init (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/aui/base-core/base-core-min.js&/o/frontend-js-web/aui/base-observable/base-observable-min.js&/o/frontend-js-web/aui/aui-widget-cssclass/aui-widget-cssclass-min.js&/o/frontend-js-web/aui/aui-widget-toggle/aui-widget-toggle-min.js&/o/frontend-js-web/liferay/store.js:2)
at component._initBase (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/aui/base-core/base-core-min.js&/o/frontend-js-web/aui/base-observable/base-observable-min.js&/o/frontend-js-web/aui/aui-widget-cssclass/aui-widget-cssclass-min.js&/o/frontend-js-web/aui/aui-widget-toggle/aui-widget-toggle-min.js&/o/frontend-js-web/liferay/store.js:1)
at component.v (?browserId=other&minifierType=&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/aui/base-core/base-core-min.js&/o/frontend-js-web/aui/base-observable/base-observable-min.js&/o/frontend-js-web/aui/aui-widget-cssclass/aui-widget-cssclass-min.js&/o/frontend-js-web/aui/aui-widget-toggle/aui-widget-toggle-min.js&/o/frontend-js-web/liferay/store.js:1)
at component.Base (combo?browserId=other&minifierType=js&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/clay/popper.js&/o/frontend-js-web/clay/bootstrap.js&/o/frontend-js-web/loader/config.js&/o/frontend-js-web/loader/loader.js&/o/frontend-js-web/aui/aui/aui.js&/o/frontend-js-web/aui/aui-base-html5-shiv/aui-base-html5-shiv.js&/o/frontend-js-web/liferay/browser_selectors.js&/o/frontend-js-web/liferay/modules.js&/o/frontend-js-web/liferay/aui_sandbox.js&/o/frontend-js-web/clay/collapsible-search.js&/o/frontend-js-web/clay/side-navigation.js&/o/frontend-js-web/misc/svg4everybody.js&/o/frontend-js-web/aui/arraylist-add/arraylist-add.js&/o/frontend-js-web/aui/arraylist-filter/arraylist-filter.js&/o/frontend-js-web/aui/arraylist/arraylist.js&/o/frontend-js-web/aui/array-extras/array-extras.js&/o/frontend-js-web/aui/array-invoke/array-invoke.js&/o/frontend-js-web/aui/attribute-base/attribute-base.js&/o/frontend-js-web/aui/attribute-complex/attribute-complex.js&/o/frontend-js-web/aui/attribute-core/attribute-core.js&/o/frontend-js-web/aui/attribute-observable/attribute-observable.js&/o/frontend-js-web/aui/attribute-extras/attribute-extras.js&/o/frontend-js-web/aui/base-base/base-base.js&/o/frontend-js-web/aui/base-pluginhost/base-pluginhost.js&/o/frontend-js-web/aui/classnamemanager/classnamemanager.js&/o/frontend-js-web/aui/datatype-xml-format/datatype-xml-format.js&/o/frontend-js-web/aui/datatype-xml-parse/datatype-xml-parse.js&/o/frontend-js-web/aui/dom-base/dom-base.js&/o/frontend-js-web/aui/dom-core/dom-core.js&/o/frontend-js-web/aui/dom-screen/dom-screen.js&/o/frontend-js-web/aui/dom-style/dom-style.js&/o/frontend-js-web/aui/event-base/event-base.js&/o/frontend-js-web/aui/event-custom-base/event-custom-base.js&/o/frontend-js-web/aui/event-custom-complex/event-custom-complex.js&/o/frontend-js-web/aui/event-delegate/event-delegate.js&/o/frontend-js-web/aui/event-focus/event-focus.js&/o/frontend-js-web/aui/event-hover/event-hover.js&/o/frontend-js-web/aui/event-key/event-key.js:764)
at new component (combo?browserId=other&minifierType=js&languageId=en_US&b=7210&t=1549316508276&/o/frontend-js-web/aui/yui-throttle/yui-throttle.js&/o/frontend-js-web/aui/aui-base-core/aui-base-core.js&/o/frontend-js-web/aui/aui-base-lang/aui-base-lang.js&/o/frontend-js-web/aui/aui-classnamemanager/aui-classnamemanager.js&/o/frontend-js-web/aui/aui-component/aui-component.js&/o/frontend-js-web/aui/aui-debounce/aui-debounce.js&/o/frontend-js-web/aui/aui-delayed-task-deprecated/aui-delayed-task-deprecated.js&/o/frontend-js-web/aui/aui-event-base/aui-event-base.js&/o/frontend-js-web/aui/aui-event-input/aui-event-input.js&/o/frontend-js-web/aui/aui-form-validator/aui-form-validator.js&/o/frontend-js-web/aui/aui-node-base/aui-node-base.js&/o/frontend-js-web/aui/aui-node-html5/aui-node-html5.js&/o/frontend-js-web/aui/aui-selector/aui-selector.js&/o/frontend-js-web/aui/aui-timer/aui-timer.js&/o/frontend-js-web/liferay/dependency.js&/o/frontend-js-web/liferay/dom_task_runner.js&/o/frontend-js-web/liferay/events.js&/o/frontend-js-web/liferay/language.js&/o/frontend-js-web/liferay/lazy_load.js&/o/frontend-js-web/liferay/liferay.js&/o/frontend-js-web/liferay/util.js&/o/frontend-js-web/liferay/global.bundle.js&/o/frontend-js-web/liferay/portal.js&/o/frontend-js-web/liferay/portlet.js&/o/frontend-js-web/liferay/workflow.js&/o/frontend-js-web/liferay/address.js&/o/frontend-js-web/liferay/form.js&/o/frontend-js-web/liferay/form_placeholders.js&/o/frontend-js-web/liferay/icon.js&/o/frontend-js-web/liferay/menu.js&/o/frontend-js-web/liferay/notice.js&/o/frontend-js-web/liferay/poller.js&/o/frontend-js-web/aui/async-queue/async-queue.js&/o/frontend-js-web/aui/base-build/base-build.js&/o/frontend-js-web/aui/cookie/cookie.js&/o/frontend-js-web/aui/event-touch/event-touch.js&/o/frontend-js-web/aui/overlay/overlay.js&/o/frontend-js-web/aui/querystring-stringify/querystring-stringify.js&/o/frontend-js-web/aui/widget-child/widget-child.js&/o/frontend-js-web/aui/widget-position-align/widget-position-align.js:93)
Attachments
Issue Links
- duplicates
-
LPS-81490 Kaleo designer - user can't fill in fields with '%' character
- Closed