[ 
https://issues.apache.org/jira/browse/MYFACES-4672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17856861#comment-17856861
 ] 

Werner Punz edited comment on MYFACES-4672 at 6/21/24 8:53 PM:
---------------------------------------------------------------

I am a little bit puzzled why you get the g.hasKey is not a function. There is 
decoration code which explicitly adds the hasKey 
/**
 * creates a neutral form data wrapper over an existing form Data element
 * the wrapper delegates following methods, append
 * and adds makeFinal as finalizing method which returns the final
 * send representation of the element
*
 * @param formData an array
*/
createFormDataDecorator:function (formData)
 
That one creates formData shims and all of them have the hasKey, I will look 
into this!
Btw. Multipart reverts in old browsers to an iframe transport if xhr level 2 
cannot be provided!
 * 
 


was (Author: werpu):
I am a little bit puzzled why you get the g.hasKey is not a function. There is 
decoration code which explicitly adds the hasKey 
/**
* creates a neutral form data wrapper over an existing form Data element
* the wrapper delegates following methods, append
* and adds makeFinal as finalizing method which returns the final
* send representation of the element
*
* @param formData an array
*/
createFormDataDecorator:function (formData)
 
That one creates formData shims and all of them have the hasKey, I will look 
into this!
Btw. Multiform reverts in old browsers to an iframe transport!
 

> Uncaught TypeError: G.hasKey is not a function
> ----------------------------------------------
>
>                 Key: MYFACES-4672
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4672
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.2.16
>            Reporter: Volodymyr Siedlecki
>            Assignee: Werner Punz
>            Priority: Major
>
> This affects 2.2 which I know is out of date, but I have a user of MyFaces 
> 2.2 who needs this bug fixed.
> I ported MYFACES-4606 to 2.2 here: 
> [https://github.com/apache/myfaces/pull/647]
> 4606 was applied to 2.3, so I applied the same fix to 2.2.  However, I didn't 
> realize that _AjaxRequestLevel2 was removed from 2.3 in this PR: 
> [https://github.com/apache/myfaces/pull/415/files]
> _AjaxRequestLevel2 still exists in the 2.2 codebase. 
> This mean that `if(targetBuf.hasKey(identifier))` was called from 
> _AjaxRequestLevel2's getFormData which does not decorate the FormData to 
> include the hasKey method – thus we get " G.hasKey is not a function". 
> [https://github.com/volosied/myfaces/blob/d5d28a0e6cae3ea22e021c64ecf474d6352bf900/api/src/main/javascript/META-INF/resources/myfaces/_impl/xhrCore/_AjaxRequestLevel2.js#L32-L44]
> This error is reproducible via multi-part form requests that use ajax. 
> What is the proper fix here? I'll create a draft PR for what I think is 
> correct. 
> Thanks!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to