So to sum up a couple possible solutions and their drawbacks:
1) Have Proxy implement EJBObject/EJBLocalObject only if designated by the bean provider,
ie:
@Remote
| public interface MyBusiness extends EJBObject
This allows us to avoid signature collisions, but doesn't give us EJB2.1 Remote
Interface views (EJB3 Spec 3.6.4) by default, and puts the onus on the bean provider to
explicity designate EJBObject. Also makes it impossible to have both 2.1 Remote/Local
interfaces "AND" methods defined by EJBObject at the same time. Looks like we
also have to look into whether this is valid for TCK.
2) Create multiple Proxies, one for EJB3.0 Business Interface, one for EJB2.1 Remote
Interface (EJBObject).
Drawback here is the number of changes we'd have to make, and the confusion to our
user base by adding another Proxy into JNDI. I can imagine we'd get lots of requests
on the user forum asking "when to use which/what's the differrence"? Also,
we'd have to determine a default JNDI binding for the new Proxy as well as mechanism
to override that (analagous to @RemoteBinding and its XML equivalent). Benefit is that
we'd definitely be avoiding method collision, satifying 786, and not interfering w/
the TCK.
3) I don't believe we can simply tell Seam (or any other EJB3.0 Clients) that they
can't use "remove" in their Business Interface:
Spec 3.4:
The business interface of an EJB 3.0 session bean is an ordinary Java
| interface, regardless of whether local or remote access is provided for the bean. In
particular, the EJB 3.0 session bean business interface is not one of the interface types
required by earlier versions of the EJB specification (i.e., EJBObject or EJBLocalObject
interface
4) Keep implementation as it current stands, but add new metadata (ie. @NoEjb2View) which
will designate that we shouldn't have EJBObject be implemented by the Proxy. Benefit
here is that we keep support to EJB3.0 and EJB2.1 clients by default, and provide
mechanism for Seam to have their "remove" method.
As long as this doesn't violate spec or TCK, and is agreeable to Seam folks, 4 would
be my vote.
S,
ALR
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4090676#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...