Andreas Osterburg created MYFACES-4638:
------------------------------------------
Summary: Inputs submitted by AJAX loose all content beginning with
ampersand ("&") characters
Key: MYFACES-4638
URL: https://issues.apache.org/jira/browse/MYFACES-4638
Project: MyFaces Core
Issue Type: Bug
Affects Versions: 4.0.0, 5.0.0
Reporter: Andreas Osterburg
Attachments: patch-FileUtils.txt, test.xhtml
When submitting input fields with AJAX the ampersand "&" character is not
handled properly on client side.
A test case ist attached. Just submitting the form works as expected,
submitting by AJAX
fails if input contains "&"-signs, like "foo&bar".
It tracked this down to the function _decodeEncodedValues_ in
{_}FileUtils.ts{_}. There happens a
decode of the current ViewState in URI-encoded format.
Basically the source of the issue is that the input string (in "{_}encoded"){_}
is processed in wrong order.
Currently it is first URI-decoded an then splitted by ampersands ("&"). It has
to be in
reverse order, since the payload may contain ampersands, which are URI-encoded
by "%26".
A small working patch for demonstration is attached.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)