Hi,
We have an old saying 'If it is not broken, do not fix it' ;-)
Ali
On 9/22/21 12:46 AM, seba.wag...@gmail.com wrote:
Hi,
as discussed in the comments section in
https://github.com/apache/openmeetings/commit/4daf7c1f53738cd786dc976114cc5278b4f05f4f#comments
<https://github.com/apache/openmeetings/commit/4daf7c1f53738cd786dc976114cc5278b4f05f4f#comments>
we would like to propose a breaking change for the OpenMeetings
Json/Rest API in v7.0.0
Problem: JSON response wrapping
Currently CXF-RS is configured to wrap the JSON response into another
object.
Example: Method signature: public List<AppointmentDTO> range(...) {
... } (Example taken from
https://github.com/apache/openmeetings/blob/master/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java#L111
<https://github.com/apache/openmeetings/blob/master/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java#L111>)
OLD/CURRENT JSON Response:
{
"appointmentDTO":
[
{
itemXYZ: 123, ...
}
]
}
Proposed NEW/UPDATED JSON Response:
// no wrapping object around it, just return list
[
{
itemXYZ: 123, ...
}
]
Reasoning: The wrapping "{ "appointmentDTO": ... }" should be dropped
from the json response body. "appointmentDTO" is generated but it is
not in any schema definition or method signature. Cause there is
nothing in the method signature that would tell anybody where "
"appointmentDTO": [" is coming from. Other than by testing the API
call and finding out by try and error.
CXF-RS allows configuring our Web Service to NOT generate that
wrapping element. And turn this behaviour off and just generate the list.
See "dropRootName" in the CXF docs at:
https://cxf.apache.org/docs/jax-rs-data-bindings.html#JAXRSDataBindings-WrappingandUnwrappingJSONsequences
<https://cxf.apache.org/docs/jax-rs-data-bindings.html#JAXRSDataBindings-WrappingandUnwrappingJSONsequences>
*This affects all methods returning a JSON response body (which is
pretty much every API Method)*
Please reply to this email if you have concerns, questions or objections.
Thanks!
Seb
Sebastian Wagner
Director Arrakeen Solutions, OM-Hosting.com
http://arrakeen-solutions.co.nz/ <http://arrakeen-solutions.co.nz/>
https://om-hosting.com <https://om-hosting.com> - Cloud & Server
Hosting for HTML5 Video-Conferencing OpenMeetings
<https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url><https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>