EJB 3 tutorial encourages to write non-standard code, at least in the EJB 2.1 adapters bit.
Session1Bean is annotated with the @Remote annotation to designate Session1Remote as its remote business interface. However, Session1Remote interface extends the EJBObject interface, which is wrong.
Enterprise JavaBeans 3.0 has this to say in Â§4.4.6:
"The following are the requirements for the session bean's business interface:
- The interface must not not extend the javax.ejb.EJBObject or javax.ejb.EJBLocalObject interface"
See also JBAS-5036.