I'd like to have each bean of the Duke's Store Java EE Tutorial application as a seperate Remote Bean, which is clustered. This way I could have a server which has the AdministratorBean, UserBean and GroupsBean, while another server cluster of 3 JBoss AS servers could have the OrderBean, OrderStatusBean and OrderDetailBean.
How I'm currently creating the project:
I have extracted interfaces of all beans. These interfaces were put in a seperate project, which resulted in BeansInterfaces.jar.
Every bean is then placed in a seperate Netbeans EJB project, which produces a .jar for each EJB.
I then created a seperate application project for each bean, to have each ejb jar packaged in an ear. Each EAR contains the BeansInterfaces.jar.
Every bean is annotated with @Remote, and every EJB is injected with, for example:
You can see the structure visualised in the attachment.
Now my question is: Is this possible? (I'm currently investigating if it would be beneficial to dynamically scale on a bean level instead of a application or module level for my thesis. I know the actual setup wouldn't be very interesting in real life)
My injected bean isn't compatible. The solution should be to only have every jar only once. But because it should be possible to have every bean running on a seperate server, I should include the BeanInterfaces.jar in each EAR. Is there another solution?