Note that there are some explanatory texts on larger screens.

plurals
  1. POEJB3 Enterprise Application As Portal & Client Web Apps - Architecture/Design
    primarykey
    data
    text
    <p><img src="https://i.stack.imgur.com/3MVHd.jpg" alt="enter image description here"></p> <p>As shown in the above pic, I have a EJB-3 Enterprise application (EAR file), which acts as a portal and holds 3 web applications (WAR files) that communicate and transact with the same datastore. These 3 webapps are not portlet implementations, but normal webapps which interact with the datastore through the Enterprise App's Persistence Layer. These webapps are developed independently and so, some of 'em use Webservices from the Enterprise App and some of 'em use EJB-Clients. </p> <p>Also, there is an other option of replacing these webapps (Web App1, Web App2 and Web App3) and using independent Enterprise Apps to communicate and transact with the database, as shown below:</p> <p><img src="https://i.stack.imgur.com/0cc17.jpg" alt="enter image description here"></p> <p>Now, my questions are:</p> <p>1) What is the best Option among the listed 2 options (above)?</p> <p>2) How does it affect when we replace those webapps acting as clients to the Enterprise App, as independent Enterprise Apps (EAR files)?</p> <p>3) What is a better model for Transaction handling, SSO functionality, Scalability and other factors?</p> <p>4) Are there are any other better models?</p> <p><strong>EDIT</strong>:</p> <p>1) In the first model, which method is a preferred way to interact with the EAR file - webservices or ejb-client jar file/library (interfaces and utility classes)?</p> <p>2) How do both models differ in memory usage (server RAM) and performance. Is there any considerable difference?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload