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
-- 
View this message in context: 
http://n2.nabble.com/%27Masking%27-fields-in-an-Entity-tp2545263p2546173.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.

Reply via email to