Hi, You can look in OpenJPA documentation [1][2] and if you have access to the source code (we are open source:) then take a look at Test cases [3] [1] http://openjpa.apache.org/builds/latest/docs/manual/manual.html#ref_guide_runtime_jpafetch [2] http://openjpa.apache.org/builds/latest/docs/manual/manual.html#ref_guide_fetch [3] openjpa-kernel/.../org.apache.openjpa.persistence.kernel.TestFetchPlan
Thanks for suggesting FetchPlan. Is there a reference that you could suggest on finding out more about FetchPlan - preferably with examples? Thanks in advance, Jay Pinaki Poddar wrote: > Hi, >> I have a whole hierarchy of entities that I am transforming using JAXB >> to send XML to a browser client. But, the amount of detail that I am >> sending as XML changes depending on the type of request. > > OpenJPA's dynamic FetchPlan is the correct solution for such use case. With > FetchPlan you can control the exact details that you need in the entity > classes that are to be sent to the browser client. > >> I have been making several entity classes to >> describe the same database table. > > Not needed if you consider using FetchPlan. > > > > Hello all, > > I have what may be a strange requirement (I guess you will have to > decide on that). But, there is a fairly long amount of background > before you get to my actual question. > > Background - > I have a whole hierarchy of entities that I am transforming using JAXB > to send XML to a browser client. But, the amount of detail that I am > sending as XML changes depending on the type of request. > > For example (simplified): > A project has many details > Each detail contains a component > Each component contains several attributes > > Sometimes I want to be able to send back only the XML for the project > (without any of its children) and sometimes, I want to send back the > whole structure. The reason for this is that a fully populated entity > can become extremely large (sometimes several Mb) - and sending that > much much information as the response to an AJAX call ends up killing > performance. > > To accomplish this, I have been making several entity classes to > describe the same database table. 'Project' is the full hierarchy and > 'FlatProject' is the project and its details - without the components. > > But, to support the various scenarios for exactly how much detail I want > to transmit has let to a lot of duplication on entities (each a > partially defined versions of the real data structure). > > Question - > Inheritance does not really satisfy my need. In my database, everything > matches the 'fully defined' version of my entities. > > So, is there a way to 'mask' my entities so that I only have one entity > class that actually refers to the database table but several masks that > limit how much of the data is visible? > > Hopefully I am not the first person to have a need like this. > > Thanks in advance, > > > Jay > > > > > ----- > Pinaki Poddar http://ppoddar.blogspot.com/ > > http://www.linkedin.com/in/pinakipoddar > OpenJPA PMC Member/Committer > JPA Expert Group Member ----- Pinaki Poddar http://ppoddar.blogspot.com/ http://www.linkedin.com/in/pinakipoddar OpenJPA PMC Member/Committer JPA Expert Group Member -- View this message in context: http://n2.nabble.com/%27Masking%27-fields-in-an-Entity-tp2545263p2546695.html Sent from the OpenJPA Users mailing list archive at Nabble.com.
