Andrei Shakirin created SYNCOPE-246:
---------------------------------------
Summary: Remove collection setters in transfer objects for JAXB
marshalling
Key: SYNCOPE-246
URL: https://issues.apache.org/jira/browse/SYNCOPE-246
Project: Syncope
Issue Type: Bug
Components: core
Environment: CXF branch
Reporter: Andrei Shakirin
Assignee: Jan Bernhardt
XML payload will be marshaled/unmarshaled using JAXB by migration to CXF Rest
frontend.
JAXB works with collections in a little bit different way as Spring Rest
marshaling.
JAXB uses only getter for the list (assumes that list is initialized due object
creation) and adds elements into the list obtained by getter by unmarshaling.
It doesn't need setter at all.
The problem is that actual implementation of transfer objects doesn't work with
JAXB.
If TO provide setter for collection, JAXB gets the list, adds the elements and
additionally calls setter for this list. As far as setter logic cleans the TO
collection, the result collection is always empty.
Solution is remove setters for collections in TOs by migration on CXF Rest.
I find it also better from security and encapsulation aspects.
Regards,
Andrei.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira