[ 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)