You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by "Jochen Kemnade (JIRA)" <ji...@apache.org> on 2014/10/15 15:42:33 UTC

[jira] [Updated] (TAP5-2072) Tapestry "metadata" is not added to XHR response if event handler method returns JSONArray

     [ https://issues.apache.org/jira/browse/TAP5-2072?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jochen Kemnade updated TAP5-2072:
---------------------------------
    Summary: Tapestry "metadata" is not added to XHR response if event handler method returns JSONArray  (was: Tapestry "metadata" is not added to XHR response if event handler method return JSONArray)

> Tapestry "metadata" is not added to XHR response if event handler method returns 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
>            Assignee: Jochen Kemnade
>         Attachments: piggyback-jsonarray.patch
>
>
> 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)