Hi All,
I have the following concern deploying EJB's from a customer and would
like to know your suggestions/thoughts on this.
-----
Here is a summary of our EJB deployment concern:
1. We have an entitybean, lets call it LightEJB which carries a home
reference to another entitybean, lets call it HeavyEJB.
2. The LightEJB is an bmp entity bean which is mostly used to view and
create the names of chemical components. The only other data which is
represented by this bean is the molecular weight and the IUPAC name for
the chemical component, all retrieved from a databank. Our stateful
session bean contains a refernce to this bean, and creates a component
list model by finding all of the relavent components with a findByXXXX,
and retrieve each individual component information to populate the
component list model. We considered having a separate entity bean just
to create the list, but then we would have to have one more additional
reference in our session bean. We use the mvc pattern much like the
Blueprint application to access the LightEJB componentlist model on the
web tier.
3. The HeavyEJB is a bmp entity bean which is used to retrieve chemical
data for each component for a calculation engine. Although this data
may view or changed, it is normally not viewed or changed. We only have
a home reference for this bean in our session bean, and plan to put
that reference in a stateless session bean for the calculation engine
for our deployment. The idea here is to minimize passivation and other
non-essential access to this heavy data, since there is so much data
involved. Both the LightEJB and HeavyEJB share the same primary key,
which is a combined key.
4. The LightEJB creates the HeavyEJB during in its createEJB method.
The LightEJB also removes the HeavyEJB during its removeEJB method.
Since they share the same primary key, this allows for only one
reference in the session bean for a business method,
createComponent("water") and removeComponent("water")...the LightEJB.
5. In the LightEJB we only have the Home reference of the HeavyEJB as a
member variable. The Home reference is obtained in the setEnityContext
method of the LightEJB. Only the create and remove methods of the
LightEJB actually obtain the remote object.
6. The HeavyEJB is currently not being accessed by the webtier, and has
no synchronized web implementation reference in the session bean.
Is this linearly scalable in an j2ee application server? Will the
transaction requirements of LightEJB mean that everytime the LightEJB
is accessed in the Session Bean, the HeavyEJB is also updated? Is there
a better way to do this?
---
Thanks,
-Prasad
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".