[forge-issues] [JBoss JIRA] (FORGE-1060) REST plugin should support creation of DTOs for the underlying JPA entities of REST resources

Vineet Reynolds (JIRA) jira-events at lists.jboss.org
Wed Jul 31 04:48:26 EDT 2013


Vineet Reynolds created FORGE-1060:
--------------------------------------

             Summary: REST plugin should support creation of DTOs for the underlying JPA entities of REST resources
                 Key: FORGE-1060
                 URL: https://issues.jboss.org/browse/FORGE-1060
             Project: Forge
          Issue Type: Feature Request
          Components: Builtin Plugins
            Reporter: Vineet Reynolds
            Assignee: Vineet Reynolds
            Priority: Critical


Using JPA entities directly in the REST resources is obviously not proving to be of much help:

* It leads to problems when working with cyclic dependencies, as seen in FORGE-606. Using {{@JsonIdentityInfo}} to resolve this has lead to further problems on the client side due to the lack of support in JavaScript clients to handle JSON object references out of the box.
* It requires manipulation of the relational associations across entities to modify the resource representations, thus lacking separation of concerns.
* It provides no control over the depth of the object graph to be serialized. Annotations like {{@JsonIgnore}} are required to be placed on JPA entities which does not aid in separation of concerns. Custom serializers/deserializers offer little benefit concerning standards since they requires compilation against specific versions of the JSON libraries like Jackson for every container that is to be supported.

Therefore it is proposed to have the REST plugin create DTOs for representing the state of the JPA entities in the REST resources.

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


More information about the forge-issues mailing list