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

Jochen Kemnade commented on TAP5-2072:
--------------------------------------

I still think this is a problem. Maybe we should not attach the meta data to 
the actual payload at all. What about using a HTTP header instead?

> Tapestry "metadata" is not added to XHR response if event handler method 
> return JSONArray
> -----------------------------------------------------------------------------------------
>
>                 Key: TAP5-2072
>                 URL: https://issues.apache.org/jira/browse/TAP5-2072
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.4
>            Reporter: Jochen Kemnade
>
> For event handlers that return JSONObject, there is an entry _tapestry in the 
> response object that contains additional resources or inits that are to be 
> executed before passing the actual data to the success handler function.
> When an event handler method returns JSONArray, the resulting array is passed 
> to the client as it is.
> The actual problem I have is that I want to add an alert init to the response.
> The issue could be addressed by wrapping JSONArray responses in a JSONObject, 
> (e.g. {_tapestry:{...}, data: [...]}) and transforming it back on the client 
> side. Probably, for the sake of consistency, it would even be best to to that 
> with JSONObject responses too (e.g. {_tapestry:{...}, data: {...}}).
> However, that approach would lead to the problem that ResponseWrapper.text 
> (representing an Object) doesn't match ResponseWrapper.json (an Array). By 
> the way, there is also a mismatch between those properties for JSONObject 
> responses that contain a _tapestry property: it is deleted in 
> ResponseWrapper.json but stays in place within ResponseWrapper.text.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to