in jboss, i believe you can put it within a jar within the EAR, in the ejb jar file, or even in the par.
Java EE 5 EAR format has an EAR/lib directory which should alleviate this problem.
If I put it in the ejb3 jar file as you suggested, does it matter that it doesn't have an interface? I want to be able to create new instances of the Bean.
MyBean myBean = new MyBean();
I thought everything in the ejb3 needed an interface so it could handle the pooling of objects?
Maybe I'm not understanding your response well.
Are you saying to do this?
MyEar.ear |--MyEJB3.ejb3 | |--MyHelperBeans.ejb |--MyPar.par |--MyWar.war
Where the helper beans go in their own .ejb (not .ejb3) file. Then that ejb jar file is included inside the ejb3 jar at the root level?
Also, if I put it in the .ejb3 jar file and don't mark it as @Stateful and make an interface for it then I will get a
javax.naming.NameNotFoundException: myPackage.myHelperBean not bound
OK, I put the helper classes in their own jar file at the root level of the ear
Then I modified the application.xml to use it
<module> <java>MyHelperClasses.jar</java> </module>
and now everything works fine.