EJB 3.1 removes the restriction that EJB components must be packaged in an ejb-jar. If you don't want the .war to define its own EJB component, then don't package the bean class (which contains the @Stateless or @Stateful annotation) anywhere in the .war.
If the .war should only contain code that acts as a *caller* of an EJB component, then make sure to only package the interfaces and supporting classes for the caller, not the EJB component implementation.
[Message sent by forum member 'ksak' (kenneth.saks_at_sun.com)]
http://forums.java.net/jive/thread.jspa?messageID=384056