can anybody help me ?
Did you ever found a solution for this?
I'm looking to do something similar. We have some presentation layer (based on seam) that is integrating with an EJB3 backend. If we create one ear for that it works great. But now we would like to put the presentation layer on a separate machine and have it communicate with another EJB3 server in the backend. Question is how to split the presentation layer from the business layer?
I made this. But my code is generated by AndroMDA with Seam and EJB3 cartridge, so I am not sure why it works lol
But here are a few pieces of code that may help you :
The EJB is injected this way in my Seam component :
@javax.ejb.EJB protected myPackage.ServiceProcessusRemote serviceProcessus;
My Seam component is itself an EJB (@javax.ejb.Stateful annotated).
And my serviceProcessus EJB is declared in ejb-jar.xml, something like this :
<session> <ejb-name>ServiceProcessusBean</ejb-name> <remote>myPackage.ServiceProcessusRemote</remote> <ejb-class>myPackageServiceProcessusBean</ejb-class> <session-type>Stateless</session-type> <transaction-type>Container</transaction-type> </session>
Hope it will help you.
You should be able to communicate with remote EJB3s on the business layer in the standard EJB3 way.
I got it working today. Two jboss instances, one containing the ejb3 business logic and one containing the web application based on seam, reusing the entities from the ejb3 layer.